Basically, for a loner job with a timeout of 60 seconds, if the job takes more than 60 seconds to complete, it cannot be enqueued again! I had to manually clear up the locks to unblock some of our users.
Here is a quick patch to make sure that a loner job can be enqueued event if a previous instance of the job did not complete before its timeout.
I hit this issue in production.
Basically, for a loner job with a timeout of 60 seconds, if the job takes more than 60 seconds to complete, it cannot be enqueued again! I had to manually clear up the locks to unblock some of our users.
Here is a quick patch to make sure that a loner job can be enqueued event if a previous instance of the job did not complete before its timeout.