How is the performance when workflow instances are saved?


It is strongly recommended to set WF_INSTANCE_SAVE to ERRORS_ONLY in any environment where you care about performance. There is a dramatic performance impact if it is set to either PER_WORKFLOW_ALWAYS or ALWAYS. There will be an lesser impact if it is set to PER_WORKFLOW_PRODUCTION. Any workflow set to save will be 2-3 or more times slower in processing.

In a production environment, there is no reason to have every single workflow saved, as any debugging or tracing should occur in a lower (Dev or QA) environment. The performance impact of this setting far outweighs any perceived benefit of having the extreme baggage of the workflow instances saved in your database. There is at least a 2-3x performance gain when moving to ERRORS_ONLY. In addition, millions of rows can be added to the workflow instance and task tables. The Platform Maintenance Scheduler (Cleanup Agent) will take a very long time when it processes these tables. The constant deletion and addition of rows to these tables will thrash your table spaces, causing them to become very fragmented, and wasting a huge amount of physical disk space.

The WF_INSTANCE_SAVE setting is so important that the value of NEVER was renamed to ERRORS_ONLY in 3.3.0 to highlight the fact that errors would be saved in workflows, thereby avoiding the unnecessary use of PER_WORKFLOW_ALWAYS, PER_WORKFLOW_PRODUCTION or ALWAYS in production environments. If an error is encountered, the NEVER or ERRORS_ONLY will save the workflow instance out for further inspection.

Continue reading

One thought on “How is the performance when workflow instances are saved?

  1. Pingback: How can you diagnose memory issues in TRIRIGA servers? | TRIRIGAFEEDIA

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s