Просмотр исходного кода

Glue(Shell) 等脚本任务支持失败重试;

xuxueli 8 лет назад
Родитель
Сommit
c48cb6eb25

+ 1 - 1
doc/XXL-JOB官方文档.md Просмотреть файл

925
 --- | --- | ---
925
 --- | --- | ---
926
 成功 | IJobHandler.SUCCESS | 0
926
 成功 | IJobHandler.SUCCESS | 0
927
 失败 | IJobHandler.FAIL | -1(其他)
927
 失败 | IJobHandler.FAIL | -1(其他)
928
-失败重试 | IJobHandler.FAIL_RETRY | 501
928
+失败重试 | IJobHandler.FAIL_RETRY | 101
929
 
929
 
930
 
930
 
931
 ## 六、版本更新日志
931
 ## 六、版本更新日志

+ 10 - 8
xxl-job-admin/src/main/resources/mybatis-mapper/XxlJobLogMapper.xml Просмотреть файл

45
 		SELECT <include refid="Base_Column_List" />
45
 		SELECT <include refid="Base_Column_List" />
46
 		FROM XXL_JOB_QRTZ_TRIGGER_LOG AS t
46
 		FROM XXL_JOB_QRTZ_TRIGGER_LOG AS t
47
 		<trim prefix="WHERE" prefixOverrides="AND | OR" >
47
 		<trim prefix="WHERE" prefixOverrides="AND | OR" >
48
-			<if test="jobGroup != null and jobGroup != ''">
48
+			<if test="jobGroup gt 0">
49
 				AND t.job_group = #{jobGroup}
49
 				AND t.job_group = #{jobGroup}
50
 			</if>
50
 			</if>
51
 			<if test="jobId gt 0">
51
 			<if test="jobId gt 0">
62
 			</if>
62
 			</if>
63
 			<if test="logStatus == 2" >
63
 			<if test="logStatus == 2" >
64
 				AND (
64
 				AND (
65
-					(t.trigger_code <![CDATA[ > ]]> 0 AND t.trigger_code!=200) ||
66
-					(t.handle_code <![CDATA[ > ]]> 0 AND t.handle_code!=200)
65
+					t.trigger_code NOT IN (0, 200) ||
66
+					t.handle_code NOT IN (0, 200)
67
 				)
67
 				)
68
 			</if>
68
 			</if>
69
 			<if test="logStatus == 3" >
69
 			<if test="logStatus == 3" >
70
-				AND (t.trigger_code = 200 AND t.handle_code=0)
70
+				AND t.trigger_code = 200
71
+				AND t.handle_code = 0
71
 			</if>
72
 			</if>
72
 		</trim>
73
 		</trim>
73
 		ORDER BY id DESC
74
 		ORDER BY id DESC
78
 		SELECT count(1)
79
 		SELECT count(1)
79
 		FROM XXL_JOB_QRTZ_TRIGGER_LOG AS t
80
 		FROM XXL_JOB_QRTZ_TRIGGER_LOG AS t
80
 		<trim prefix="WHERE" prefixOverrides="AND | OR" >
81
 		<trim prefix="WHERE" prefixOverrides="AND | OR" >
81
-			<if test="jobGroup != null and jobGroup != ''">
82
+			<if test="jobGroup gt 0">
82
 				AND t.job_group = #{jobGroup}
83
 				AND t.job_group = #{jobGroup}
83
 			</if>
84
 			</if>
84
 			<if test="jobId gt 0">
85
 			<if test="jobId gt 0">
95
 			</if>
96
 			</if>
96
 			<if test="logStatus == 2" >
97
 			<if test="logStatus == 2" >
97
 				AND (
98
 				AND (
98
-				(t.trigger_code <![CDATA[ > ]]> 0 AND t.trigger_code!=200) ||
99
-				(t.handle_code <![CDATA[ > ]]> 0 AND t.handle_code!=200)
99
+					t.trigger_code NOT IN (0, 200) ||
100
+					t.handle_code NOT IN (0, 200)
100
 				)
101
 				)
101
 			</if>
102
 			</if>
102
 			<if test="logStatus == 3" >
103
 			<if test="logStatus == 3" >
103
-				AND (t.trigger_code = 200 AND t.handle_code=0)
104
+				AND t.trigger_code = 200
105
+				AND t.handle_code = 0
104
 			</if>
106
 			</if>
105
 		</trim>
107
 		</trim>
106
 	</select>
108
 	</select>

+ 1 - 1
xxl-job-core/src/main/java/com/xxl/job/core/handler/impl/ScriptJobHandler.java Просмотреть файл

66
 
66
 
67
         if (exitValue == 0) {
67
         if (exitValue == 0) {
68
             return IJobHandler.SUCCESS;
68
             return IJobHandler.SUCCESS;
69
-        } else if (exitValue == 501) {
69
+        } else if (exitValue == 101) {
70
             return IJobHandler.FAIL_RETRY;
70
             return IJobHandler.FAIL_RETRY;
71
         } else {
71
         } else {
72
             return new ReturnT<String>(IJobHandler.FAIL.getCode(), "script exit value("+exitValue+") is failed");
72
             return new ReturnT<String>(IJobHandler.FAIL.getCode(), "script exit value("+exitValue+") is failed");