Resetting stuck Documentum jobs
While dm_agent_exec is running a job, Content Server sets dm_job.a_special_app to agentexec. If the utility or the content server stops mid-run, that attribute is often left set. Later starts then treat the job as still in progress, and you get a dead-job warning for names like dm_StateOfDocbase.
What is actually marked running
select object_name, r_object_id, a_last_invocation, a_last_completion,
a_last_process_id, a_current_status
from dm_job
where a_special_app = 'agentexec'
a_last_process_id is the OS PID of that run. On the Content Server host, check whether that PID still exists before you touch the object. If it does, the job is not stuck — stop it at the OS (or wait). If it does not, the row is leftover state.
Clear the leftover
Only after the PID is gone. This example uses the standard dm_StateOfDocbase job name. Prefer r_object_id if more than one job could match.
update dm_job object
set a_special_app = '',
a_current_status = 'ABORTED',
a_last_completion = date(now)
where object_name = 'dm_StateOfDocbase'
and a_special_app = 'agentexec'
Empty string (not a space) on a_special_app is what agent_exec looks for as “not running.” ABORTED plus a completion time keeps the last-run columns honest. Do not set completion to a fake historical date.
Job ids use type tag 08. Examples: 08xxxxxxx. Do not paste a real hex id from a queue dump or a mail event (queue_item_id, docbase name, recipient) into notes.
The mail you may see
A Job_Failure / dead-job event from agent_exec is telling you the object said in-progress and the process was not there. Fix the job row; deleting the dmi_queue_item does not unstick the job.