A robot restart will cause the following states for the job:
- If a start command is received after restart, the job will be restarted and the workflow executed, so it would complete in a standard way due to the business of the workflow + admin actions after the job is restarted (e.g. Kill command).
- If a stop command is received after the restart, the job will stop with the error ‘Could not find job with id’.
Solution for On-Premise Orchestrator:
The only way for you right now is to involve your Orchestrator Database admin to access the dbo.Jobs table and run a query to modify the state of the impacted jobs or mark them as deleted.
SELECT * FROM [uipath].[dbo].[Jobs] WHERE [State] = '1'
That table has a column called State and the values can be:
0 = Pending,
1 = Running,
2 = Stopping,
3 = Terminating,
4 = Faulted,
5 = Successful,
6 = Stopped,
7 = Suspended,
8 = Resumed
There is also a column called IsDeleted and the values are 0 = false and 1 = true.
And there is a column called ServiceUserName which tells the account running the job.
Ask your db admin to either:
- Update the State value of the jobs still running (thus, status 1) into status 6 - stopped.
UPDATE [uipath].[dbo].[Jobs]
SET [State] = '6'
WHERE [Id] = 'YOUR_IMPACTED_JOB_ID'
- Don’t change the state value, but change the IsDeleted value from 0 to 1 and this should delete the job completely from the Orch GUI.
UPDATE [uipath].[dbo].[Jobs]
SET [IsDeleted] = '1'
WHERE [Id] = 'YOUR_IMPACTED_JOB_ID'
How can I get the job id for those running jobs?
Your Database team should know.
Run the query:
SELECT * FROM [uipath].[dbo].[Jobs] WHERE [State] = '1'
In the results check the values for the Id column. (Make sure that you are performing the needed operations for the correct JobIds)
Example: