|
|
@ -1202,25 +1202,25 @@ public abstract class JobStoreSupport implements JobStore, Constants { |
|
|
|
if (job == null) { |
|
|
|
if (job == null) { |
|
|
|
try { |
|
|
|
try { |
|
|
|
job = retrieveJob(conn, newTrigger.getJobKey()); |
|
|
|
job = retrieveJob(conn, newTrigger.getJobKey()); |
|
|
|
|
|
|
|
if (job == null) { |
|
|
|
|
|
|
|
throw new JobPersistenceException("The job (" |
|
|
|
|
|
|
|
+ newTrigger.getJobKey() |
|
|
|
|
|
|
|
+ ") referenced by the trigger does not exist."); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (job.isConcurrentExectionDisallowed() && !recovering) { |
|
|
|
|
|
|
|
state = checkBlockedState(conn, job.getKey(), state); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (existingTrigger) { |
|
|
|
|
|
|
|
getDelegate().updateTrigger(conn, newTrigger, state, job); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
getDelegate().insertTrigger(conn, newTrigger, state, job); |
|
|
|
|
|
|
|
} |
|
|
|
} catch (JobPersistenceException e) { |
|
|
|
} catch (JobPersistenceException e) { |
|
|
|
getLog().error(e.getMessage()); |
|
|
|
getLog().error(e.getMessage()); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
if (job == null) { |
|
|
|
|
|
|
|
throw new JobPersistenceException("The job (" |
|
|
|
|
|
|
|
+ newTrigger.getJobKey() |
|
|
|
|
|
|
|
+ ") referenced by the trigger does not exist."); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (job.isConcurrentExectionDisallowed() && !recovering) { |
|
|
|
|
|
|
|
state = checkBlockedState(conn, job.getKey(), state); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (existingTrigger) { |
|
|
|
|
|
|
|
getDelegate().updateTrigger(conn, newTrigger, state, job); |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
getDelegate().insertTrigger(conn, newTrigger, state, job); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
} catch (Exception e) { |
|
|
|
} catch (Exception e) { |
|
|
|
throw new JobPersistenceException("Couldn't store trigger '" + newTrigger.getKey() + "' for '" |
|
|
|
throw new JobPersistenceException("Couldn't store trigger '" + newTrigger.getKey() + "' for '" |
|
|
|
+ newTrigger.getJobKey() + "' job:" + e.getMessage(), e); |
|
|
|
+ newTrigger.getJobKey() + "' job:" + e.getMessage(), e); |
|
|
@ -2987,6 +2987,7 @@ public abstract class JobStoreSupport implements JobStore, Constants { |
|
|
|
} catch (SQLException sqle) { |
|
|
|
} catch (SQLException sqle) { |
|
|
|
getLog().error("Unable to set trigger state to ERROR.", sqle); |
|
|
|
getLog().error("Unable to set trigger state to ERROR.", sqle); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
return null; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (trigger.getCalendarName() != null) { |
|
|
|
if (trigger.getCalendarName() != null) { |
|
|
|