Salesforce

SDL WorldServer - 'Upgrade assigned and claimed task' (assignment job) executing for a long time and not completing

« Go Back

Information

 
Article TypeSolution Article
Scope/EnvironmentSDL WorldServer
Symptoms/Context
Sometimes we see an assignment background job in the Background Jobs page executing for a long time and not completing:

User-added image

The Job name is Upgrade assigned and claimed task.

When a job is executing, it is not possible to cancel it or put it On hold. If you do so, you will get an error that the job is executing.

User-added image

What can we do to unblock the assignment jobs queue?
 
Resolution
Preface: the Upgrade assigned and claimed tasks jobs are responsible for the assignment of tasks and are run by the STATS engine. They are run one by one and are usually supposed to take 1 second or 2. It is not possible to increase the number of STATS engine and make multiple assignment jobs run at the same time.

So if one of these Job is running for a long time and not completing, all the other assignment jobs are blocked. Other type of background jobs like export or import are unaffected by the assignment jobs because they are run by the Background Engine and not by the STATS engine. So even if they all display on this page, they are run differently and are not interphering with each other.

To address the issue described above, try following steps:

1- Select several of the Upgrade assigned and claimed tasks jobs below the one executing that are in status In Queue and click on Change Priority.
2- Set the priority to 4 and click OK

User-added image




3- Go to the worldServer Database and set the job in Executing status on Hold. To do so, In the Database, use the Job ID corresponding to the Job and run this query in the Database to send the job to status On Hold (STATUS=3). The BACKGROUNDTASKID corresponds to the Job ID column. Assuming that the Job ID is 8590845, run this query (if you work in Oracle, commit):

update BACKGROUNDTASKS set STATUS=3 where BACKGROUNDTASKID=8590845

4- Now g back to the Background Jobs page and refresh. You should see the Job that was executing before in On hold status. The other jobs should start to be executed. Once all are executed, select the one On hold and click on resume to restart it.
 
Root Cause
Reference
Attachment 1 
Attachment 2 
Attachment 3 
Attachment 4 
Attachment 5 

Powered by