Workflowintermediate

Workflow Monitor and Troubleshooting Stuck Processes

Explain the diagnostic tools and methodology for troubleshooting stuck or errored workflow processes

The Workflow Monitor shows a running process as a diagram, with each activity's status. It is where a stuck transaction is diagnosed.

Workflow Monitor is like an air traffic control radar screen for a single flight (process instance) — showing exactly which waypoint (activity) the flight is currently at, whether it's cruising normally, holding in a pattern (suspended awaiting notification response), or has declared an emergency (error), letting controllers decide whether to have it retry its approach, skip a waypoint, or divert entirely.

Key Concepts

1
The statuses.
    Active     running now
    Complete   finished, with its result
    Notified   waiting for a person to respond
    Error      the function activity raised an exception
    Deferred   queued for background processing
    Suspended  paused by an administrator
2
Each status points at a different cause.Notified is not stuck. It is waiting for a person, correctly. Check who it went to and whether they received the email.
3
Deferred means the process is queued for the background engine. If deferred activities accumulate, the Workflow Background Process is not running — one concurrent program, and everything waits on it. This is a common and easily missed cause of "everything has stopped".
4
Error means a PL/SQL exception in a function activity. The monitor shows the error stack, and the process is paused awaiting an administrator.
5
Handling an errored activity.
    Retry     re-run it, after fixing the underlying data
    Skip      mark it complete with a chosen result, moving on
    Rewind    go back to an earlier activity and resume from there
    Abort     end the process
6
Retry after fixing the cause is the normal path. Skip moves the transaction forward without doing the work the activity existed to do, and is occasionally right and frequently a decision somebody regrets later.
7
The order to check, for "the requisition is stuck".
  1. What status is the current activity?
  2. Notified -> who has it? Is the mailer running?
  3. Deferred -> is the Workflow Background Process running?
  4. Error -> read the stack; fix the data; retry
  5. No workflow at all -> it was never started
8
Step 5 is worth including. A transaction with no workflow instance was never submitted into the process, which is a different problem entirely and cannot be diagnosed in the monitor.
9
Where the data lives. WF_ITEM_ACTIVITY_STATUSES holds the per-activity status and WF_ITEMS the process instances. Querying for errored activities across all processes is how you find a backlog before users report it.
WF_ITEM_ACTIVITY_STATUSESWF_ITEMS
10
What the interviewer is probing.1. "What does a stuck workflow usually mean?" Probing: experience. Stalls: "A bug." *Moves up:* an errored activity, a deferred activity waiting on the background process, or a notification sent to an invalid or inactive user.
11
2. "What is the Workflow Background Process for?" Probing: the mechanism. Stalls: "Cleanup." Moves up: running deferred and timed-out activities — processes appear stuck simply because it is not scheduled frequently enough.
12
3. "How do you restart an errored activity?" Probing: the practical skill. Stalls: "Recreate the record." Moves up: retry it from the status monitor after fixing the cause, or skip it to a defined result when retry is not appropriate.
13
4. "What maintenance does workflow need?" Probing: the operational angle. Stalls: "None." Moves up: purging completed runtime data regularly, or the workflow tables grow until performance degrades across the instance.