Symptoms
Additionally, a workflow timer job can pause, fail or run for a very long time if you have large amounts of workflow data. The following documentation should be addressed first before pointing the finger at a rogue workflow: Defensive Workflow Design Part 1 - Workflow History Lists.
SharePoint 2010 Workflow fails to run after pause and workflow status shows 'In progress'. If you click on it to go to the Workflow Status page, workflow history area shows 'workflow failed to run.' in latest item's Description.
Consider the following scenario:
A SharePoint 2010 farm has a Web Front End Server with the 'Microsoft SharePoint Foundation Web Application' service running and a separate Application Server with the 'Microsoft SharePoint Foundation Workflow Timer Service' running (The server does not have the Web Application service running).
A workflow has been queued for resumption and the Application server with the Workflow Timer Service tries to resume the workflow but fails.
In this scenario the application server fails to resume the Workflow timer service and the workflow gets stuck in 'In progress' status. The Workflow History list shows 'workflow failed to run.' message.
Additionally, the ULS log entries on the SharePoint server may include the following:
OWSTIMER.EXE (0x0E5C) 0x2184 SharePoint Foundation Workflow Infrastructure 72fu Unexpected Load Workflow Class: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.NullReferenceException: Object reference not set to an instance of an object. at Microsoft.SharePoint.Workflow.SPWinOeHostServices.EnsurePluggableServices(SPSite site, SPWorkflowExternalDataExchangeServiceCollection services, ExternalDataExchangeService existingServices) at Microsoft.SharePoint.Workflow.SPWinOeHostServices.ctor(SPSite site, SPWeb web, SPWorkflowManager manager, SPWorkflowEngine engine)
OWSTIMER.EXE (0x0E5C) 0x2184 SharePoint Foundation Workflow Infrastructure 98d8 Unexpected System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.NullReferenceException: Object reference not set to an instance of an object. at Microsoft.SharePoint.Workflow.SPWinOeHostServices.EnsurePluggableServices(SPSite site, SPWorkflowExternalDataExchangeServiceCollection services, ExternalDataExchangeService existingServices) at Microsoft.SharePoint.Workflow.SPWinOeHostServices.ctor(SPSite site, SPWeb web, SPWorkflowManager manager, SPWorkflowEngine engine)
OWSTIMER.EXE (0x0D64) 0x0E98 SharePoint Foundation Workflow Infrastructure frg9 Medium Workflow could not be run because SPWebApplication.UpdateWorkflowConfigurationSettings was not previously called, and the Web Application service has been disabled on this server. Call UpdateWorkflowConfigurationSettings or turn on the Web Application service for this server.
This article provides a detailed overview of the top 20 workflow management software in detail along with their download links. We can automate the business process with the help of the Workflow Software and thereby save a lot of time. Timer + Pro's limit is only 60 minutes, so if you want to measure a bigger amount of time, you better look for another solution. Timer + Pro comes with a full support for Microsoft's virtual assistant, Cortana. To set up a timer with Cortana, just say 'Timer twenty minutes', and the timer will be automatically set.
Cause
The Workflow Timer Service tries to read the workflow batchsize settings from the web.config or configuration database for a web application. By default, the batchsize setting is in the web.config file if the server is running the Web Application service.
If the Web Application service is not running on the same server and the script in Method 1 (under the 'Resolution' section) has not been run, the batchsize setting is neither in the web.config file nor in the configuration database, then the operation fails.
Resolution
Free icon download library. Method 1:
Locate one Web Front End server which has Web Application service running, run the following PowerShell command to copy workflow-related configuration from the web.config to the configuration database so it will be available from every server in the Farm.
• $webapp = Get-SPWebApplication -identity http://
• $webapp.UpdateWorkflowConfigurationSettings()
Method 2:
Start the Web Application Service on all servers that have the Workflow Timer Service running.
Method 3:
Disable the Workflow Timer Service on servers that are not running the Web Application service.
More Information
A SharePoint workflow is put in a 'dehydrated' state when a pause occurs or gets postponed due to the WorkflowPostponeThreshold. SharePoint 2010 uses a queuing system to control workflow-related stress on farm resources and the content database. By using this system, when the number of workflows executing against a database reaches an administrator-configured threshold, successive workflow operations are added to the queue to be run by the Workflow Timer service. By default, this service receives a batch of workflow work items every minute.
Several farm administrator settings, directly and indirectly related to the queuing mechanism, affect the performance and scaling for workflow. The following sections describe what these settings do and how to adjust them to meet performance requirements.
Workflow Postpone Threshold (Set-SPFarmConfig –WorkflowPostponeThreshold )
The maximum number of workflows that can execute against a single content database before additional requests and operations are queued. Queued workflows show a status of Starting. This is a farm-wide setting that has a default value of 15. This represents the number of workflow operations that are being processed at a time, not the maximum number of workflows that can be in progress. As workflow operations are completed, successive operations will be able to run.
Workflow Event Delivery Batch Size (Set-SPWorkflow –BatchSize )
The Workflow Timer service is an exception to the postpone threshold limit and will retrieve batches of items from the queue and execute them one at a time. These batches can be larger than the postpone threshold. The number of work items that the service receives per run is set by using the BatchSize property. The BatchSize property can be set one time per Web Application service instance. Oswan vc schedule. The default value is 100.
When running on application servers that are not configured to be front-end servers, the Workflow Timer service requires workflow configuration settings in Web.config to be set in the configuration database. This must be done through a script that calls UpdateWorkflowConfigurationSettings() on the SPWebApplication object, which will copy the Web.config settings from a front-end server.
See the following link for more information
Estimate performance and capacity planning for workflow in SharePoint Server 2010
It's been an exciting few months for us at Chronotrack + Athlinks as we've increased our momentum for the design and development for the much-awaited Pro 2 Controller. It's exciting to be at the stage we are at and we'd like to share an update with you.
As we all know, Timing is a competitive industry. It's an exciting, demanding and often stressful job. One would be hard-pressed to find a job that is at once so challenging and yet so fulfilling. In the midst of the excitement of the job, many tasks for a Timer are repetitive and become second nature. But, if the repetitive tasks aren't easy to do, then it's easy to get frustrated. In an attempt to understand Timer's frustrations better, our User Experience team has set out to learn all we can from the people we are designing for, so that we ultimately deliver a controller that reflects how Timers work and think.
Just as there are a lot of inputs into timing and scoring a race, there are a lot of inputs and priorities when developing a new product. Similar to having clean, organized athlete reg data in order to ensure a properly scored event, building a controller that will meet the needs and expectations of our Timers requires solid input from our Timers themselves. We've facilitated three rounds of consecutive Timer research around workflow, controller menu structure and controller interaction. We've had the fortune of getting 70 points of Timer feedback across these three rounds of research. The design for the Pro 2 Controller has benefited greatly from the integration of this feedback into its design and development.
Let's take a look at what research we've done so far.
ROUND ONE OF TIMER RESEARCH: THOUGHT PROCESS AND PRIORITIES
First up was a deep dive into understanding how Timers think about the functions on the controller and their race day workflow. We did what we call a Card Sort exercise with 8 Timers. We asked Timers to group a list of functions into what was most logical for them, and to stack rank them in terms of priority and importance to their job. Timers were then asked to name these groups. We looked at the themes of the card groups, their priorities, and found some consistent trends across all of the Timers' exercises.
An example of card groupings from the Card Sort exercise.
ROUND TWO: MENU TESTING
Once we had identified the patterns in thoughts and priorities, we leveraged this information into a new design for the menu structure for the controller. In order to validate our theory that this would be a more efficient menu, we decided to test this new menu structure against the BoxScore menu structure, the one that has been in place for the past few years. We posted the two menus to our Timer Facebook page and asked people to complete the same 10 tasks on each menu. Over 60 tests were completed by Timers. The results were very exciting.
Below you see the click behavior for the original menu on the top, and the new menu below.
The task was to Set the Point Name.
Original menu structure, currently on the controllers
As you can see from the images, the current menu structure (the image on the left) causes confusion, and a lot of extra clicks to find what is needed. The new menu on the right, based directly on Timer research, shows a structure that aligns with how Timers think through the steps to set the point name. Overall, the new menu structure outperformed the original menu structure by 40%: it averaged 5 clicks less to complete a task and it was 2 minutes faster to complete the entire exercise. We were thrilled at this improvement! This was an exciting result and led us into the third stage of research with enthusiasm.
Workflow Timer
ROUND THREE: USABILITY TESTING
Once we had confirmation that we were gaining understanding of the Timer thought process, we were on to the third round of research: usability testing. Based on the feedback from the Card Sorts and the Menu Test, we developed a landing screen in the user interface that includes options for Dashboard, Race Day Ops, and Settings.
- Dashboard: a screen that displays all of the needed statuses and tag reads needed at a glance
- Race Day Ops: houses all of the functions needed to set up the controller for race day
- Settings: houses functions around maintenance, connections and versions
Workflow Timer Service
Landing page for the user interface
Filepane. Race Day Ops functions
We did some usability testing of the design and layout with a handful of Timers. Initially, we asked about first impressions of the designs, and then had the Timers complete 7 tasks to see how they navigated through the designs. The feedback across the board was positive and enthusiastic about the new layout. Timers liked the organizational structure of the information and the flow it created for the tasks needed.
Workflow Timer Pro Instructions
WHAT'S NEXT
We're in the final stages of wrapping up our design process with our engineers on the Pro 2 Controllers. One last area of research we're focusing on is the tactile keypad, similar to the mini controllers, which will be included on the Pro 2 Controller. We're running a few different tests with a combination of functional shortcuts and alpha-numeric keyboards, to assess which design proves to be most intuitive and useful for Timers. We're curious to see what ultimately suits Timers best.
We are looking forward to the upcoming Regional Timer Summit this summer. The team is enthusiastic about the development and innovation that is going into the new controllers. The improvements would not have been possible without the time given to us by the Timers who have generously contributed their feedback.
We are always looking to incorporate additional Timers into our research and testing. If you haven't signed up yet, but want to, please reach out to our Researcher, Alison Lawrence: alawrence@lifetimefitness.com