In some cases, workflows in WebCenter can "hang". This means one or more workflows are stuck in a corrupt state and as a result of this, the WebCenter system may become slow or unresponsive.
While Esko is obviously working hard to avoid these problems in the future, for now there is a way to troubleshoot these "hanging" workflows. See the procedure described below.
Procedure
Easy solution
If you are looking for an easy solution: Restart the WebCenter JBossService to restart the Workflow Engine.
This operation might take a while in case there are many running workflow tasks on the system.
Identifying hanging workflows
To identify "hanging" workflows that are stuck on manual tasks:
Connect to your WebCenter Database Server.
Open your database using a management tool such as SQL Server Management Studio for SQL, or SQLDeveloper for Oracle.
Execute one of the following SQL queries to see which workflow task or tasks are causing the problem:
SQL database:
select * from webcenter.PROJECT_WCTasks, webcenter.wf_wftriggers
where PROJECT_WCTasks.Task_Status_ID = '00001_0000000003'
and PROJECT_WCTasks.Id = substring(wf_wftriggers.ExtTriggerID,1,16)
and wf_wftriggers.Armed = 1
and PROJECT_WCTasks.Deleted = 0
Oracle database:
select * from webcenter.PROJECT_WCTasks, webcenter.wf_wftriggers
where PROJECT_WCTasks.Task_Status_ID = '00001_0000000003'
and PROJECT_WCTasks.Id = SUBSTR(wf_wftriggers.ExtTriggerID,1,16)
and wf_wftriggers.Armed = 1
and PROJECT_WCTasks.Deleted = 0
In the Project_ID column you can see which project the task belongs to. In the Task_Name column you can see the task's name.
This procedure only identifies workflow tasks that are stuck on the manual tasks they create themselves. Even if you do not identify any hanging workflows using this procedure, there still might be workflows stuck on something else, for instance, approval.
Repairing the workflow task(s)
To fix your problem, there are two things you can try. If you managed to identify a "hanging" workflow task using the procedure described above, you can first try restarting this workflow:
Locate the project by entering the Project_ID you found earlier into your WebCenter URL. For example: https://mywebcenter/WebCenter_Inst/projdetailswctasks.jsp?projectID=00002_0000001234.
Now, you can find your task back in the Task List, by looking for the name.
Open the workflow by clicking Workflow.
Try to Pause and Resume your workflow task.
If this does not work or you could not identify the culprit, restart the WebCenter JBossService to restart the Workflow Engine.