Commit 3b0456f4 authored by Ard Schrijvers's avatar Ard Schrijvers

REPO-1918 [Backport 11.2] Make sure to have latest jcr node states instead of possibly stale nodes

Since the lock via the LockManager does not involve any jcr locking, it
does *never* trigger a cluster sync. This means that we can get the lock
for a node that has been processed and finished just by another cluster
node that also already freed the lock again. Making sure that after we
obtained the lock to invoke a session refresh should result in that
process the job.

(cherry picked from commit 075c95c1)
parent 9b2aad70
......@@ -584,6 +584,7 @@ public class JCRJobStore implements JobStore {
}
LockResource lockResource = lock(jobNode, triggerNode);
if (lockResource != null) {
session.refresh(false);
try {
// double check nextFireTime now that we have a lock
if (isPendingTrigger(triggerNode, noLaterThan)) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment