Cancel changes

Description

PRB1084321 & PRB664759 are connected, in order to talk about one we need to talk about the other

Symptoms

When submitting a request in the Service Catalog or kicking off a new workflow, the window may hang or experience very slow performance.

When loading a sc_req_item list with the Stage column showing, the list may take a longer than expected time to load or be cancelled by transaction quotas. Note: this is only slow if the sc_req_items loaded in the list have an impacted workflow.

What versions are impacted by performance issues related to PRB1084321 and PRB664759?

IP6 and earlier

Impacted by PRB664759

What types of workflows are specifically impacted? Big & complex workflows that contain pipes, |, in the sequence field. This behavior has always been in the platform, no regression

Part of the fix for PRB664759 is to run a fix script to clean up the impacted workflows, any using pipes in their sequence field, however, customers can still get affected workflows through updates sets, the Store, etc. For this reason they are not fully protected by this fix.

Additionally, the fix for PRB664759 introduced PRB1084321 where small, uncomplex workflows can now experience the reported performance issues

IP9+

Both PRBs are fixed and workflows with pipes should no longer experience this particular performance issue whether they are small or big/complex. We clean and evaluate the sequence on run time therefore eliminating the issue.

How can I proactively check if my instance is impacted?

Navigate to the following list to see all workflow versions that have a | in their sequence field and stage rendering is either Legacy or Requested item renderer:

Note: These are all of the potentially impacted workflows and the workaround should be applied. Performance issues vary in severity, so depending on the complexity of the workflows, the issue may be varying degrees.

Steps to Reproduce

There are multiple ways to determine if you are being impacted by this issue:

Open this url:https://<instance url>/wf_workflow_version_list.do?sysparm_query=checked_out_by%3Djavascript%3Ags.getUserID()%5EORpublished%3Dtrue%5EGOTOfull_sequencesLIKE%7C%5Ecolumn_renderer%3D007c2f021b020100adca1e094f0713b4%5EORcolumn_renderer%3D2acd1c538f111200d95374f137bdee20

Take note of the resulting workflow versions.

While displaying the Requested Item with Stage field in list view, filter-out the catalog items using the workflow versions from above result. If the Requested item list view is now displaying, then you are experiencing this issue.

OR

1. Open this url:https://<instance url>/stats.do

2. Locate the Default thread running the impacted transaction.

3. Open the corresponding thread into a new window and refresh the page so the stack trace for the processing thread is visible.

4. Check if the below line is consistently seen in the stack trace while the thread is hanging/processing slow. Refresh the browser window to see what lines are being executed over time in the stack trace: