Suspend jobs by process instance ID - repeating timer still runs

processEngine.getManagementService().suspendJobByProcessInstanceId(processInstanceId);

I am calling this API method on an embedded process instance. I wrote a test that verifies that the job in a workflow becomes suspended, but eventually the job is still run when it is a repeating timer type.

Have I missed something? I have a use case where we need to be able to stop background jobs at the process instance level and they have objects with repeating timers in them. Previously we were suspending the entire process instance, but this is no longer desirable due to concurrency issues we are experiencing with multiple threads trying to suspend/resume at once.

I’m on a relatively old version of camunda BPM (7.8) in a postgres 9.6 db. I searched the jira issues and didn’t see anything that might have indicated someone else ran into this or there was a bug fixed around it.