Search 800 + Posts

Oct 20, 2009

Oracle Workflow background Process

Here I will provide some more insight on Oracle Workflow background process from the prospect of Order Management.

Workflow background process is very interesting concurrent program. This program is designed to process the workflow, which is in DEFERRED status.
Most of the time this concurrent program is executed in scheduled manner says 5 , 10, 15 and a required minutes.
Customer should not stop executing this program if they have workflow which as DEFERRED activity in the workflow. Because doing will results in of hundred or thousands (depend on business 2 business) of records STUCK in deferred status and once you resume execution of this process again it will really take time to clear the backlog and that might really affect/impact your business.
In case there is some issue with this process you should act immediately.

Many a time this type of situation is unavoidable and you have to end up with killing this concurrent program and no running it for hours and days. Now how to handle the backlog once you start executing this process, best and safe option is to increase the # of threads of this concurrent program to 3-5 and be little patient. If you have large amount of inflow of the data which then clearing of backlog is really very painful, but you have to be patient, because there are only few shortcuts available and they are not safe.

Running multiple threads of this program may result in LOCKING issue, usually it happened if you have > 4 threads, so safe bet is 4 threads, but if required increase the threads.
# of threads doesn’t matter if you have only STANDARD item , in that case you can start 5-6 threads , but if you have Model/Fulfillment set then locking issue do occurred (please note that locking will be resolved very much by this process).if system will not be able to lock the model/fulfillment set then they mark the record as DEFERRED and start processing the next record


  1. How do you increase number of threads for workflow background process? I don't see the parameter

  2. Hi! Vinod

    Here by # of threads I mean , no. of background process you can scheduled to run at a time.

    Hope that helps, let me know if you have question.