Browse Source

任务暂停、删除优化,避免quartz delete不完整导致任务脏数据;

xuxueli 6 years ago
parent
commit
da6d5432f3

+ 1 - 0
doc/XXL-JOB官方文档.md

@@ -1420,6 +1420,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
 - 6、底层Log调优,应用正常终止取消异常栈信息打印;
 - 7、交互优化,尽量避免新开页面窗口;仅WebIDE支持新开页,并提供窗口快速关闭按钮;
 - 8、[测试中]底层通讯方案优化:升级较新版本xxl-rpc,由"JETTY"方案调整为"NETTY_HTTP"方案,执行器内嵌netty-http-server提供服务,调度中心复用容器端口提供服务;
+- 9、[测试中]任务暂停、删除优化,避免quartz delete不完整导致任务脏数据;
 - [迭代中]注册中心优化,实时性注册发现:心跳注册间隔10s,refresh失败则首次注册并立即更新注册信息,心跳类似;30s过期销毁;
 - [迭代中]脚本任务,支持数据参数,新版本仅支持单参数不支持需要兼容;
 - [迭代中]提供执行器Docker镜像;

+ 6 - 4
xxl-job-admin/src/main/java/com/xxl/job/admin/core/schedule/XxlJobDynamicScheduler.java

@@ -230,7 +230,7 @@ public final class XxlJobDynamicScheduler {
         // 5、schedule job
         Date date = scheduler.scheduleJob(jobDetail, cronTrigger);
 
-        logger.info(">>>>>>>>>>> addJob success, jobDetail:{}, cronTrigger:{}, date:{}", jobDetail, cronTrigger, date);
+        logger.info(">>>>>>>>>>> addJob success(quartz), jobDetail:{}, cronTrigger:{}, date:{}", jobDetail, cronTrigger, date);
         return true;
     }
 
@@ -245,13 +245,15 @@ public final class XxlJobDynamicScheduler {
      */
     public static boolean removeJob(String jobName, String jobGroup) throws SchedulerException {
 
-        TriggerKey triggerKey = TriggerKey.triggerKey(jobName, jobGroup);
+        JobKey jobKey = new JobKey(jobName, jobGroup);
+        scheduler.deleteJob(jobKey);
 
+        /*TriggerKey triggerKey = TriggerKey.triggerKey(jobName, jobGroup);
         if (scheduler.checkExists(triggerKey)) {
             scheduler.unscheduleJob(triggerKey);    // trigger + job
-        }
+        }*/
 
-        logger.info(">>>>>>>>>>> removeJob success, triggerKey:{}", triggerKey);
+        logger.info(">>>>>>>>>>> removeJob success(quartz), triggerKey:{}", jobKey);
         return true;
     }