@Override public boolean updateLastGenerateTriggerTime(String jobId, Long lastGenerateTriggerTime) { return new UpdateSql(getSqlTemplate()) .update() .table(getTableName()) .set("last_generate_trigger_time", lastGenerateTriggerTime) .set("gmt_modified", SystemClock.now()) .where("job_id = ? ", jobId) .doUpdate() == 1; }
@Override public boolean updateLastGenerateTriggerTime(String jobId, Long lastGenerateTriggerTime) { return new UpdateSql(getSqlTemplate()) .update() .table(getTableName()) .set("last_generate_trigger_time", lastGenerateTriggerTime) .set("gmt_modified", SystemClock.now()) .where("job_id = ? ", jobId) .doUpdate() == 1; }
@Override public void resume(JobPo jobPo) { new UpdateSql(getSqlTemplate()) .update() .table(getTableName(jobPo.getTaskTrackerNodeGroup())) .set("is_running", false) .set("task_tracker_identity", null) .set("gmt_modified", SystemClock.now()) .where("job_id=?", jobPo.getJobId()) .doUpdate(); }
@Override public void resume(JobPo jobPo) { new UpdateSql(getSqlTemplate()) .update() .table(getTableName(jobPo.getTaskTrackerNodeGroup())) .set("is_running", false) .set("task_tracker_identity", null) .set("gmt_modified", SystemClock.now()) .where("job_id=?", jobPo.getJobId()) .doUpdate(); }
@Override protected boolean lockJob(String taskTrackerNodeGroup, String jobId, String taskTrackerIdentity, Long triggerTime, Long gmtModified) { try { return new UpdateSql(sqlTemplate) .update() .table(getTableName(taskTrackerNodeGroup)) .set("is_running", true) .set("task_tracker_identity", taskTrackerIdentity) .set("gmt_modified", SystemClock.now()) .where("job_id = ?", jobId) .and("is_running = ?", false) .and("trigger_time = ?", triggerTime) .and("gmt_modified = ?", gmtModified) .doUpdate() == 1; } catch (Exception e) { LOGGER.error("Error when lock job:" + e.getMessage(), e); return false; } }
@Override protected boolean lockJob(String taskTrackerNodeGroup, String jobId, String taskTrackerIdentity, Long triggerTime, Long gmtModified) { try { return new UpdateSql(sqlTemplate) .update() .table(getTableName(taskTrackerNodeGroup)) .set("is_running", true) .set("task_tracker_identity", taskTrackerIdentity) .set("gmt_modified", SystemClock.now()) .where("job_id = ?", jobId) .and("is_running = ?", false) .and("trigger_time = ?", triggerTime) .and("gmt_modified = ?", gmtModified) .doUpdate() == 1; } catch (Exception e) { LOGGER.error("Error when lock job:" + e.getMessage(), e); return false; } }
@Override public int incRepeatedCount(String jobId) { while (true) { JobPo jobPo = getJob(jobId); if (jobPo == null) { return -1; } if (new UpdateSql(getSqlTemplate()) .update() .table(getTableName()) .set("repeated_count", jobPo.getRepeatedCount() + 1) .where("job_id = ?", jobId) .and("repeated_count = ?", jobPo.getRepeatedCount()) .doUpdate() == 1) { return jobPo.getRepeatedCount() + 1; } } }
@Override public int incRepeatedCount(String jobId) { while (true) { JobPo jobPo = getJob(jobId); if (jobPo == null) { return -1; } if (new UpdateSql(getSqlTemplate()) .update() .table(getTableName()) .set("repeated_count", jobPo.getRepeatedCount() + 1) .where("job_id = ?", jobId) .and("repeated_count = ?", jobPo.getRepeatedCount()) .doUpdate() == 1) { return jobPo.getRepeatedCount() + 1; } } }
private UpdateSql buildUpdateSqlPrefix(JobQueueReq request) { return new UpdateSql(getSqlTemplate()) .update() .table(getTableName(request)) .setOnNotNull("cron_expression", request.getCronExpression()) .setOnNotNull("need_feedback", request.getNeedFeedback()) .setOnNotNull("ext_params", JSON.toJSONString(request.getExtParams())) .setOnNotNull("trigger_time", JdbcTypeUtils.toTimestamp(request.getTriggerTime())) .setOnNotNull("priority", request.getPriority()) .setOnNotNull("max_retry_times", request.getMaxRetryTimes()) .setOnNotNull("rely_on_prev_cycle", request.getRelyOnPrevCycle() == null ? true : request.getRelyOnPrevCycle()) .setOnNotNull("submit_node_group", request.getSubmitNodeGroup()) .setOnNotNull("task_tracker_node_group", request.getTaskTrackerNodeGroup()) .setOnNotNull("repeat_count", request.getRepeatCount()) .setOnNotNull("repeat_interval", request.getRepeatInterval()) .setOnNotNull("gmt_modified", SystemClock.now()); }
private UpdateSql buildUpdateSqlPrefix(JobQueueReq request) { return new UpdateSql(getSqlTemplate()) .update() .table(getTableName(request)) .setOnNotNull("cron_expression", request.getCronExpression()) .setOnNotNull("need_feedback", request.getNeedFeedback()) .setOnNotNull("ext_params", JSON.toJSONString(request.getExtParams())) .setOnNotNull("trigger_time", JdbcTypeUtils.toTimestamp(request.getTriggerTime())) .setOnNotNull("priority", request.getPriority()) .setOnNotNull("max_retry_times", request.getMaxRetryTimes()) .setOnNotNull("rely_on_prev_cycle", request.getRelyOnPrevCycle() == null ? true : request.getRelyOnPrevCycle()) .setOnNotNull("submit_node_group", request.getSubmitNodeGroup()) .setOnNotNull("task_tracker_node_group", request.getTaskTrackerNodeGroup()) .setOnNotNull("repeat_count", request.getRepeatCount()) .setOnNotNull("repeat_interval", request.getRepeatInterval()) .setOnNotNull("gmt_modified", SystemClock.now()); }
@Override public boolean updateLastGenerateTriggerTime(String jobId, Long lastGenerateTriggerTime) { return new UpdateSql(getSqlTemplate()) .update() .table(getTableName()) .set("last_generate_trigger_time", lastGenerateTriggerTime) .set("gmt_modified", SystemClock.now()) .where("job_id = ? ", jobId) .doUpdate() == 1; }
@Override protected boolean lockJob(String taskTrackerNodeGroup, String jobId, String taskTrackerIdentity, Long triggerTime, Long gmtModified) { try { return new UpdateSql(sqlTemplate) .update() .table(getTableName(taskTrackerNodeGroup)) .set("is_running", true) .set("task_tracker_identity", taskTrackerIdentity) .set("gmt_modified", SystemClock.now()) .where("job_id = ?", jobId) .and("is_running = ?", false) .and("trigger_time = ?", triggerTime) .and("gmt_modified = ?", gmtModified) .doUpdate() == 1; } catch (Exception e) { LOGGER.error("Error when lock job:" + e.getMessage(), e); return false; } }
@Override public void resume(JobPo jobPo) { new UpdateSql(getSqlTemplate()) .update() .table(getTableName(jobPo.getTaskTrackerNodeGroup())) .set("is_running", false) .set("task_tracker_identity", null) .set("gmt_modified", SystemClock.now()) .where("job_id=?", jobPo.getJobId()) .doUpdate(); }
@Override public int incRepeatedCount(String jobId) { while (true) { JobPo jobPo = getJob(jobId); if (jobPo == null) { return -1; } if (new UpdateSql(getSqlTemplate()) .update() .table(getTableName()) .set("repeated_count", jobPo.getRepeatedCount() + 1) .where("job_id = ?", jobId) .and("repeated_count = ?", jobPo.getRepeatedCount()) .doUpdate() == 1) { return jobPo.getRepeatedCount() + 1; } } }
private UpdateSql buildUpdateSqlPrefix(JobQueueReq request) { return new UpdateSql(getSqlTemplate()) .update() .table(getTableName(request)) .setOnNotNull("cron_expression", request.getCronExpression()) .setOnNotNull("need_feedback", request.getNeedFeedback()) .setOnNotNull("ext_params", JSON.toJSONString(request.getExtParams())) .setOnNotNull("trigger_time", JdbcTypeUtils.toTimestamp(request.getTriggerTime())) .setOnNotNull("priority", request.getPriority()) .setOnNotNull("max_retry_times", request.getMaxRetryTimes()) .setOnNotNull("rely_on_prev_cycle", request.getRelyOnPrevCycle() == null ? true : request.getRelyOnPrevCycle()) .setOnNotNull("submit_node_group", request.getSubmitNodeGroup()) .setOnNotNull("task_tracker_node_group", request.getTaskTrackerNodeGroup()) .setOnNotNull("repeat_count", request.getRepeatCount()) .setOnNotNull("repeat_interval", request.getRepeatInterval()) .setOnNotNull("gmt_modified", SystemClock.now()); }