locked
Can SharePoint Foundation Workflow Timer Service be stopped on Crawl(Index), App server? RRS feed

  • Question

  • Hi,

     

    I understand that Microsoft SharePoint Foundation Workflow Timer Service (SFTS) is started by default (?) on all the servers in the farm ( We have 7 Server - 3 WFE, 2 Crawl(Index)/APP, 2 DBs) and We have been observing that, this STFS, running on Crawl and App server is most likely causing problem for Custom workflow with DelayActivity.

     

    I will explain the actual problem in detail in the subsequent reply but I would like to know,

     

    1. Is it safe to stop this service on Crawl and/or App servers?

    2. What functionality of SharePoint other than workflow may get impacted if this service is stopped on Crawl and/or App servers?

     

    Regards

    Vijay

    Thursday, January 6, 2011 9:28 AM

Answers

  • Thanks Lily,

     

    Well I have figured it out the root cause of the problem that we were facing and the solution to the same as well, for the benefit of others I would like to explain the problem and solution as below,

     

    Problem:

    ·         A state machine workflow is deployed on multi server SharePoint server 2010 farm.

    ·         Workflow has DelayActivity used in multiple states.

    ·         Workflow(s) logs an error in workflow history list as “<workflow name> failed to run”  (randomly, no specific pattern)

    ·         ULS logs, Event Viewer has no error logged

     

    Analysis:

    ·         I understand that ( I would love to get my understanding corrected if not the case) during processing of delayactivity by Workflow, a timerjob is created and scheduled/added on (or may be picked up by) the server(s) who has Microsoft SharePoint Foundation Workflow Timer Service running on it.

    ·         As a part of executing this timer job(on time maturity), server (WFE/Crawl/APP) try to process the instruction which in this case rescheduling the workflow execution and this requires workflow assembly to be available on this server. (Do read this very interesting post if want to understand how workflows are executed http://www.the14folder.com/2010/07/25/migrating-workflows-question)

    ·         Now you may be wondering

    o   Should Workflow assembly be present on this server roles?

    o   If yes then how does Workflow assembly go missing from Crawl, App server

    ·         Well the culprit was a value ‘WebFrontEnd’ of attribute ‘DeploymentServerType’ in a Solution manifest file. This has caused the solution deployment process to copy the Workflow assembly only to WFE’s and not on Crawl and App Server roles (http://msdn.microsoft.com/en-us/library/ms412929.aspx)

    ·         Where in, since Microsoft SharePoint Foundation Workflow Timer service was running on Crawl and App servers as well, timerjob execution was failing with either “Feature not found” and/or “Assembly cannot be loaded information in ULS logs (you will find these only if you enable verbose level logging http://technet.microsoft.com/en-us/library/ee748656.aspx)

     

    Solution:

    ·         We stopped the Microsoft SharePoint Foundation Workflow Timer Service on the Crawl and App server roles, since as referred by the Lily, it is not recommended to have these service running on App and Crawl server roles.

     

    Take Aways:

    ·         Be sure of the attributes that you choose in your Solution manifest file.

    ·         Enable the verbose level logging if you do not see any error in ULS logs, Event Viewer

    ·         Make sure that the services running on each of the server roles are MUST to have and you know why you have chosen it that way.

    ·         Stop the Microsoft SharePoint Foundation Workflow Timer Service on the server roles where you not intend to deploy your solution(s) that would require this service.

     

    Regards

    Vijay

    • Marked as answer by Lily Wu Sunday, January 16, 2011 4:02 PM
    Wednesday, January 12, 2011 10:42 AM
  • Hello Vijay,

    This service is automatically configured to run on all Web servers in the farm and it is recommended to run on the Web server according to the Topologies for SharePoint Server 2010.
    I am not sure what functionality will be affected if we stop this service on App servers but I think it could be ok.

    Thanks & Regards.


    Lily Wu || Microsoft Online Community Support Engineer || SharePoint
    • Marked as answer by Lily Wu Sunday, January 16, 2011 4:02 PM
    Wednesday, January 12, 2011 9:30 AM

All replies

  • Hello Vijay,

    This service is automatically configured to run on all Web servers in the farm and it is recommended to run on the Web server according to the Topologies for SharePoint Server 2010.
    I am not sure what functionality will be affected if we stop this service on App servers but I think it could be ok.

    Thanks & Regards.


    Lily Wu || Microsoft Online Community Support Engineer || SharePoint
    • Marked as answer by Lily Wu Sunday, January 16, 2011 4:02 PM
    Wednesday, January 12, 2011 9:30 AM
  • Thanks Lily,

     

    Well I have figured it out the root cause of the problem that we were facing and the solution to the same as well, for the benefit of others I would like to explain the problem and solution as below,

     

    Problem:

    ·         A state machine workflow is deployed on multi server SharePoint server 2010 farm.

    ·         Workflow has DelayActivity used in multiple states.

    ·         Workflow(s) logs an error in workflow history list as “<workflow name> failed to run”  (randomly, no specific pattern)

    ·         ULS logs, Event Viewer has no error logged

     

    Analysis:

    ·         I understand that ( I would love to get my understanding corrected if not the case) during processing of delayactivity by Workflow, a timerjob is created and scheduled/added on (or may be picked up by) the server(s) who has Microsoft SharePoint Foundation Workflow Timer Service running on it.

    ·         As a part of executing this timer job(on time maturity), server (WFE/Crawl/APP) try to process the instruction which in this case rescheduling the workflow execution and this requires workflow assembly to be available on this server. (Do read this very interesting post if want to understand how workflows are executed http://www.the14folder.com/2010/07/25/migrating-workflows-question)

    ·         Now you may be wondering

    o   Should Workflow assembly be present on this server roles?

    o   If yes then how does Workflow assembly go missing from Crawl, App server

    ·         Well the culprit was a value ‘WebFrontEnd’ of attribute ‘DeploymentServerType’ in a Solution manifest file. This has caused the solution deployment process to copy the Workflow assembly only to WFE’s and not on Crawl and App Server roles (http://msdn.microsoft.com/en-us/library/ms412929.aspx)

    ·         Where in, since Microsoft SharePoint Foundation Workflow Timer service was running on Crawl and App servers as well, timerjob execution was failing with either “Feature not found” and/or “Assembly cannot be loaded information in ULS logs (you will find these only if you enable verbose level logging http://technet.microsoft.com/en-us/library/ee748656.aspx)

     

    Solution:

    ·         We stopped the Microsoft SharePoint Foundation Workflow Timer Service on the Crawl and App server roles, since as referred by the Lily, it is not recommended to have these service running on App and Crawl server roles.

     

    Take Aways:

    ·         Be sure of the attributes that you choose in your Solution manifest file.

    ·         Enable the verbose level logging if you do not see any error in ULS logs, Event Viewer

    ·         Make sure that the services running on each of the server roles are MUST to have and you know why you have chosen it that way.

    ·         Stop the Microsoft SharePoint Foundation Workflow Timer Service on the server roles where you not intend to deploy your solution(s) that would require this service.

     

    Regards

    Vijay

    • Marked as answer by Lily Wu Sunday, January 16, 2011 4:02 PM
    Wednesday, January 12, 2011 10:42 AM
  •  

    Vijay,


    Have you seen any issues with stopping the Microsoft SharePoint Services Timer (OWSTimer) on your app servers?


    Monday, March 21, 2011 3:22 PM
  • Nope,

    we haven't seen any issue so far due to stopping the Microsoft SharePoint Foundation Workflow Timer service on app Servers.

    -V

    Wednesday, April 27, 2011 11:26 PM