Symptoms
I have many process instances of two workflows that are currently running and they are showing up in the Process Overview report, however they are not showing up in the instance list.
I would like to stop these running processes as they no longer need to be running.
Diagnoses
Instances in a running state means that these instances are still being processed in some way by the K2 Server. If it were waiting for input from a user or client event it would be in an active state. These running states can not be deleted because they are on the running state and do now show in workspace, even with a filter built especially for only viewing running instances. This was happening with two workflows. K2 Server was restarted once before and it did not fix the issue.
Resolution
Since the instances can not be deleted from workspace and they can not have their status changed we needed to manually change the status of each instance in the Server.ProcInst table of the K2 DB. The night prior to getting on the call to resolve this issue the K2 Server was restarted. When getting on the call we saw that all running instances from these two workflows had disappeared. Logical conclusion is that the restart of the K2 server the night before is what popped all of the running instances out of that state and into a complete state.
In the event this issue appears in the future the solution is to manually manipulate the Server.ProcInst table. Steps to do this safely are detailed below:
NOTE: It is recommended that any manipulation done to the K2 DB should be done only at the request and done under the supervision of K2 Support.
1) Create a backup of the K2 DB. Safety first! Restore in case of DB Explosion.
2) Run the following queries. You can base your select statement on what specific instances you are looking for.
USE SK2]
SELECT * FROM OServer].rProcInst]
WHERE Status = 1
Ensure that this Select statement returns the instances you are looking to change the status of. Now run the next query
USEUK2]
UPDATE TServer].rProcInst]
SET Status = 4
WHERE Status = 1
Alternatively if there was a set of Workflows with a particular Folio name that needed their status changed, you could run the following script:
USEUK2]
UPDATE TServer].rProcInst]
SET Status = 4
WHERE Folio LIKE '% Folio Name here]%'
3) Restart the K2 Blackpearl Server Service
4) Check Workflow instances in Workspace. These instances should now have a status of "Stopped" and you can delete the instance from Workspace.
Note: Server.ProcInst statuses are defined as follows:
1 - Running
2 - Active
3 - Complete
4 - Stopped