views:

336

answers:

3

If I update an Assembly that holds a workflow, I have to restart the appropriate Windows Process to pick up the new Assemblies.

For Web parts & stuff, this is just the IIS Application Pool in question (iisapp /r), and for Timer Jobs it is OWSTIMER.exe (net stop/start SPTimerV3)

But who runs the workflows? Are they ran within IIS' Application Pool and are restarted when I restart the Application Pool with iisapp /r? If yes, which AppPool to restart, if I have one for the Site (:80) and one for the Central Admin (:49173)?

Edit: Following the answers, I've managed to attach the debugger to the server, and at least Workflows that are Scope="Site" in the feature.xml indeed run in the w3wp.exe of the Application Pool. I have not tested farm-level workflows though.

+1  A: 

The hierarchy is like this:

  • Application Pool
  • Web Application
  • Site Collection
  • Site

The workflows for a certain SharePoint web application run in the worker process set up for the application pool that is hosting that particular web application.

Central Administration has typically has its own AppPool, so in your case you need to restart the AppPool for the Site (:80).

Nathan DeWitt
A: 

Sharepoint workflows runs on OWSTIMER process

Bulat
A: 

Workflow instances in SharePoint run in either the sptimerv3.exe process or the w3wp.exe process. Which one an instance runs in at any particular time depends on what the most recent waiting activity. If the workflow starts as a result of a user interactive operation or if it restarts after waiting for a user activity which is web oriented, then the workflow instance will be executing on the w3wp.exe process. If the workflow instance restarts as a result of a Delay activity (some timeout) then it will be running on the v3timer.exe process.

I recommend you use the Visual Studio 2008 built in SharePoint workflow template and have Visual Studio 2008 and SharePoint 2007 on your development machine. This avoids most of the complexities with debugging workflow in SharePoint as Visual Studio 2008 will take care of it.

Alternatively, you can use Visual Studio to attach to both processes to do your debugging and it will work just fine.

Workflow instances running on your site lists do not run on your Central Admin process.

Paul Andrew