Sfoglia il codice sorgente

Merge pull request #982 from strongant/master

许雪里 6 anni fa
parent
commit
cff452eed1
No account linked to committer's email
19 ha cambiato i file con 50 aggiunte e 39 eliminazioni
  1. 1 1
      doc/db/tables_xxl_job.sql
  2. 3 3
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/model/XxlJobLog.java
  3. 2 2
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/thread/JobFailMonitorHelper.java
  4. 1 1
      xxl-job-admin/src/main/java/com/xxl/job/admin/dao/XxlJobInfoDao.java
  5. 4 4
      xxl-job-admin/src/main/java/com/xxl/job/admin/dao/XxlJobLogDao.java
  6. 2 2
      xxl-job-admin/src/main/resources/mybatis-mapper/XxlJobLogMapper.xml
  7. 4 3
      xxl-job-admin/src/test/java/com/xxl/job/admin/controller/AbstractSpringMvcTest.java
  8. 4 2
      xxl-job-admin/src/test/java/com/xxl/job/admin/dao/XxlJobGroupDaoTest.java
  9. 4 2
      xxl-job-admin/src/test/java/com/xxl/job/admin/dao/XxlJobInfoDaoTest.java
  10. 5 3
      xxl-job-admin/src/test/java/com/xxl/job/admin/dao/XxlJobLogDaoTest.java
  11. 4 2
      xxl-job-admin/src/test/java/com/xxl/job/admin/dao/XxlJobLogGlueDaoTest.java
  12. 1 1
      xxl-job-admin/src/test/java/com/xxl/job/admin/dao/XxlJobRegistryDaoTest.java
  13. 4 2
      xxl-job-admin/src/test/java/com/xxl/job/admin/util/I18nUtilTest.java
  14. 1 1
      xxl-job-core/src/main/java/com/xxl/job/core/biz/ExecutorBiz.java
  15. 1 1
      xxl-job-core/src/main/java/com/xxl/job/core/biz/impl/ExecutorBizImpl.java
  16. 3 3
      xxl-job-core/src/main/java/com/xxl/job/core/biz/model/HandleCallbackParam.java
  17. 3 3
      xxl-job-core/src/main/java/com/xxl/job/core/biz/model/TriggerParam.java
  18. 1 1
      xxl-job-core/src/main/java/com/xxl/job/core/log/XxlJobFileAppender.java
  19. 2 2
      xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java

+ 1 - 1
doc/db/tables_xxl_job.sql Vedi File

@@ -30,7 +30,7 @@ CREATE TABLE `xxl_job_info` (
30 30
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
31 31
 
32 32
 CREATE TABLE `xxl_job_log` (
33
-  `id` int(11) NOT NULL AUTO_INCREMENT,
33
+  `id` bigint(20) NOT NULL AUTO_INCREMENT,
34 34
   `job_group` int(11) NOT NULL COMMENT '执行器主键ID',
35 35
   `job_id` int(11) NOT NULL COMMENT '任务,主键ID',
36 36
   `executor_address` varchar(255) DEFAULT NULL COMMENT '执行器地址,本次执行的地址',

+ 3 - 3
xxl-job-admin/src/main/java/com/xxl/job/admin/core/model/XxlJobLog.java Vedi File

@@ -8,7 +8,7 @@ import java.util.Date;
8 8
  */
9 9
 public class XxlJobLog {
10 10
 	
11
-	private int id;
11
+	private long id;
12 12
 	
13 13
 	// job info
14 14
 	private int jobGroup;
@@ -34,11 +34,11 @@ public class XxlJobLog {
34 34
 	// alarm info
35 35
 	private int alarmStatus;
36 36
 
37
-	public int getId() {
37
+	public long getId() {
38 38
 		return id;
39 39
 	}
40 40
 
41
-	public void setId(int id) {
41
+	public void setId(long id) {
42 42
 		this.id = id;
43 43
 	}
44 44
 

+ 2 - 2
xxl-job-admin/src/main/java/com/xxl/job/admin/core/thread/JobFailMonitorHelper.java Vedi File

@@ -46,9 +46,9 @@ public class JobFailMonitorHelper {
46 46
 				while (!toStop) {
47 47
 					try {
48 48
 
49
-						List<Integer> failLogIds = XxlJobAdminConfig.getAdminConfig().getXxlJobLogDao().findFailJobLogIds(1000);
49
+						List<Long> failLogIds = XxlJobAdminConfig.getAdminConfig().getXxlJobLogDao().findFailJobLogIds(1000);
50 50
 						if (failLogIds!=null && !failLogIds.isEmpty()) {
51
-							for (int failLogId: failLogIds) {
51
+							for (long failLogId: failLogIds) {
52 52
 
53 53
 								// lock log
54 54
 								int lockRet = XxlJobAdminConfig.getAdminConfig().getXxlJobLogDao().updateAlarmStatus(failLogId, 0, -1);

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/admin/dao/XxlJobInfoDao.java Vedi File

@@ -35,7 +35,7 @@ public interface XxlJobInfoDao {
35 35
 	
36 36
 	public int update(XxlJobInfo xxlJobInfo);
37 37
 	
38
-	public int delete(@Param("id") int id);
38
+	public int delete(@Param("id") long id);
39 39
 
40 40
 	public List<XxlJobInfo> getJobsByGroup(@Param("jobGroup") int jobGroup);
41 41
 

+ 4 - 4
xxl-job-admin/src/main/java/com/xxl/job/admin/dao/XxlJobLogDao.java Vedi File

@@ -31,9 +31,9 @@ public interface XxlJobLogDao {
31 31
 							 @Param("triggerTimeEnd") Date triggerTimeEnd,
32 32
 							 @Param("logStatus") int logStatus);
33 33
 	
34
-	public XxlJobLog load(@Param("id") int id);
34
+	public XxlJobLog load(@Param("id") long id);
35 35
 
36
-	public int save(XxlJobLog xxlJobLog);
36
+	public long save(XxlJobLog xxlJobLog);
37 37
 
38 38
 	public int updateTriggerInfo(XxlJobLog xxlJobLog);
39 39
 
@@ -51,9 +51,9 @@ public interface XxlJobLogDao {
51 51
 						@Param("clearBeforeTime") Date clearBeforeTime,
52 52
 						@Param("clearBeforeNum") int clearBeforeNum);
53 53
 
54
-	public List<Integer> findFailJobLogIds(@Param("pagesize") int pagesize);
54
+	public List<Long> findFailJobLogIds(@Param("pagesize") int pagesize);
55 55
 
56
-	public int updateAlarmStatus(@Param("logId") int logId,
56
+	public int updateAlarmStatus(@Param("logId") long logId,
57 57
 								 @Param("oldAlarmStatus") int oldAlarmStatus,
58 58
 								 @Param("newAlarmStatus") int newAlarmStatus);
59 59
 

+ 2 - 2
xxl-job-admin/src/main/resources/mybatis-mapper/XxlJobLogMapper.xml Vedi File

@@ -110,7 +110,7 @@
110 110
 		</trim>
111 111
 	</select>
112 112
 	
113
-	<select id="load" parameterType="java.lang.Integer" resultMap="XxlJobLog">
113
+	<select id="load" parameterType="java.lang.Long" resultMap="XxlJobLog">
114 114
 		SELECT <include refid="Base_Column_List" />
115 115
 		FROM xxl_job_log AS t
116 116
 		WHERE t.id = #{id}
@@ -218,7 +218,7 @@
218 218
 		</trim>
219 219
 	</delete>
220 220
 
221
-	<select id="findFailJobLogIds" resultType="int" >
221
+	<select id="findFailJobLogIds" resultType="long" >
222 222
 		SELECT id FROM `xxl_job_log`
223 223
 		WHERE !(
224 224
 			(trigger_code in (0, 200) and handle_code = 0)

+ 4 - 3
xxl-job-admin/src/test/java/com/xxl/job/admin/controller/AbstractSpringMvcTest.java Vedi File

@@ -3,16 +3,17 @@ package com.xxl.job.admin.controller;
3 3
 import org.junit.Before;
4 4
 import org.junit.runner.RunWith;
5 5
 import org.springframework.beans.factory.annotation.Autowired;
6
+import org.springframework.boot.test.context.SpringBootTest;
6 7
 import org.springframework.test.context.ContextConfiguration;
7 8
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
9
+import org.springframework.test.context.junit4.SpringRunner;
8 10
 import org.springframework.test.context.web.WebAppConfiguration;
9 11
 import org.springframework.test.web.servlet.MockMvc;
10 12
 import org.springframework.test.web.servlet.setup.MockMvcBuilders;
11 13
 import org.springframework.web.context.WebApplicationContext;
12 14
 
13
-@WebAppConfiguration
14
-@RunWith(SpringJUnit4ClassRunner.class)
15
-@ContextConfiguration(locations = {"classpath*:spring/*.xml"})
15
+@RunWith(SpringRunner.class)
16
+@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
16 17
 public class AbstractSpringMvcTest {
17 18
 
18 19
   @Autowired

+ 4 - 2
xxl-job-admin/src/test/java/com/xxl/job/admin/dao/XxlJobGroupDaoTest.java Vedi File

@@ -4,14 +4,16 @@ import com.xxl.job.admin.core.model.XxlJobGroup;
4 4
 import com.xxl.job.admin.dao.XxlJobGroupDao;
5 5
 import org.junit.Test;
6 6
 import org.junit.runner.RunWith;
7
+import org.springframework.boot.test.context.SpringBootTest;
7 8
 import org.springframework.test.context.ContextConfiguration;
8 9
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
10
+import org.springframework.test.context.junit4.SpringRunner;
9 11
 
10 12
 import javax.annotation.Resource;
11 13
 import java.util.List;
12 14
 
13
-@RunWith(SpringJUnit4ClassRunner.class)
14
-@ContextConfiguration(locations = "classpath*:spring/applicationcontext-*.xml")
15
+@RunWith(SpringRunner.class)
16
+@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
15 17
 public class XxlJobGroupDaoTest {
16 18
 
17 19
     @Resource

+ 4 - 2
xxl-job-admin/src/test/java/com/xxl/job/admin/dao/XxlJobInfoDaoTest.java Vedi File

@@ -3,15 +3,17 @@ package com.xxl.job.admin.dao;
3 3
 import com.xxl.job.admin.core.model.XxlJobInfo;
4 4
 import org.junit.Test;
5 5
 import org.junit.runner.RunWith;
6
+import org.springframework.boot.test.context.SpringBootTest;
6 7
 import org.springframework.test.context.ContextConfiguration;
7 8
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
9
+import org.springframework.test.context.junit4.SpringRunner;
8 10
 
9 11
 import javax.annotation.Resource;
10 12
 import java.util.Date;
11 13
 import java.util.List;
12 14
 
13
-@RunWith(SpringJUnit4ClassRunner.class)
14
-@ContextConfiguration(locations = "classpath*:spring/applicationcontext-*.xml")
15
+@RunWith(SpringRunner.class)
16
+@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
15 17
 public class XxlJobInfoDaoTest {
16 18
 	
17 19
 	@Resource

+ 5 - 3
xxl-job-admin/src/test/java/com/xxl/job/admin/dao/XxlJobLogDaoTest.java Vedi File

@@ -3,16 +3,18 @@ package com.xxl.job.admin.dao;
3 3
 import com.xxl.job.admin.core.model.XxlJobLog;
4 4
 import org.junit.Test;
5 5
 import org.junit.runner.RunWith;
6
+import org.springframework.boot.test.context.SpringBootTest;
6 7
 import org.springframework.test.context.ContextConfiguration;
7 8
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
9
+import org.springframework.test.context.junit4.SpringRunner;
8 10
 
9 11
 import javax.annotation.Resource;
10 12
 import java.util.Date;
11 13
 import java.util.List;
12 14
 import java.util.Map;
13 15
 
14
-@RunWith(SpringJUnit4ClassRunner.class)
15
-@ContextConfiguration(locations = "classpath*:spring/applicationcontext-*.xml")
16
+@RunWith(SpringRunner.class)
17
+@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
16 18
 public class XxlJobLogDaoTest {
17 19
 
18 20
     @Resource
@@ -27,7 +29,7 @@ public class XxlJobLogDaoTest {
27 29
         log.setJobGroup(1);
28 30
         log.setJobId(1);
29 31
 
30
-        int ret1 = xxlJobLogDao.save(log);
32
+        long ret1 = xxlJobLogDao.save(log);
31 33
         XxlJobLog dto = xxlJobLogDao.load(log.getId());
32 34
 
33 35
         log.setTriggerTime(new Date());

+ 4 - 2
xxl-job-admin/src/test/java/com/xxl/job/admin/dao/XxlJobLogGlueDaoTest.java Vedi File

@@ -4,14 +4,16 @@ import com.xxl.job.admin.core.model.XxlJobLogGlue;
4 4
 import com.xxl.job.admin.dao.XxlJobLogGlueDao;
5 5
 import org.junit.Test;
6 6
 import org.junit.runner.RunWith;
7
+import org.springframework.boot.test.context.SpringBootTest;
7 8
 import org.springframework.test.context.ContextConfiguration;
8 9
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
10
+import org.springframework.test.context.junit4.SpringRunner;
9 11
 
10 12
 import javax.annotation.Resource;
11 13
 import java.util.List;
12 14
 
13
-@RunWith(SpringJUnit4ClassRunner.class)
14
-@ContextConfiguration(locations = "classpath*:spring/applicationcontext-*.xml")
15
+@RunWith(SpringRunner.class)
16
+@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
15 17
 public class XxlJobLogGlueDaoTest {
16 18
 
17 19
     @Resource

+ 1 - 1
xxl-job-admin/src/test/java/com/xxl/job/admin/dao/XxlJobRegistryDaoTest.java Vedi File

@@ -10,7 +10,7 @@ import javax.annotation.Resource;
10 10
 import java.util.List;
11 11
 
12 12
 @RunWith(SpringRunner.class)
13
-@SpringBootTest
13
+@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
14 14
 public class XxlJobRegistryDaoTest {
15 15
 
16 16
     @Resource

+ 4 - 2
xxl-job-admin/src/test/java/com/xxl/job/admin/util/I18nUtilTest.java Vedi File

@@ -3,16 +3,18 @@ package com.xxl.job.admin.util;
3 3
 import com.xxl.job.admin.core.util.I18nUtil;
4 4
 import org.junit.Test;
5 5
 import org.junit.runner.RunWith;
6
+import org.springframework.boot.test.context.SpringBootTest;
6 7
 import org.springframework.test.context.ContextConfiguration;
7 8
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
9
+import org.springframework.test.context.junit4.SpringRunner;
8 10
 
9 11
 /**
10 12
  * email util test
11 13
  *
12 14
  * @author xuxueli 2017-12-22 17:16:23
13 15
  */
14
-@RunWith(SpringJUnit4ClassRunner.class)
15
-@ContextConfiguration(locations = "classpath*:spring/applicationcontext-*.xml")
16
+@RunWith(SpringRunner.class)
17
+@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
16 18
 public class I18nUtilTest {
17 19
 
18 20
     @Test

+ 1 - 1
xxl-job-core/src/main/java/com/xxl/job/core/biz/ExecutorBiz.java Vedi File

@@ -37,7 +37,7 @@ public interface ExecutorBiz {
37 37
      * @param fromLineNum
38 38
      * @return
39 39
      */
40
-    public ReturnT<LogResult> log(long logDateTim, int logId, int fromLineNum);
40
+    public ReturnT<LogResult> log(long logDateTim, long logId, int fromLineNum);
41 41
 
42 42
     /**
43 43
      * run

+ 1 - 1
xxl-job-core/src/main/java/com/xxl/job/core/biz/impl/ExecutorBizImpl.java Vedi File

@@ -58,7 +58,7 @@ public class ExecutorBizImpl implements ExecutorBiz {
58 58
     }
59 59
 
60 60
     @Override
61
-    public ReturnT<LogResult> log(long logDateTim, int logId, int fromLineNum) {
61
+    public ReturnT<LogResult> log(long logDateTim, long logId, int fromLineNum) {
62 62
         // log filename: logPath/yyyy-MM-dd/9999.log
63 63
         String logFileName = XxlJobFileAppender.makeLogFileName(new Date(logDateTim), logId);
64 64
 

+ 3 - 3
xxl-job-core/src/main/java/com/xxl/job/core/biz/model/HandleCallbackParam.java Vedi File

@@ -8,19 +8,19 @@ import java.io.Serializable;
8 8
 public class HandleCallbackParam implements Serializable {
9 9
     private static final long serialVersionUID = 42L;
10 10
 
11
-    private int logId;
11
+    private long logId;
12 12
     private long logDateTim;
13 13
 
14 14
     private ReturnT<String> executeResult;
15 15
 
16 16
     public HandleCallbackParam(){}
17
-    public HandleCallbackParam(int logId, long logDateTim, ReturnT<String> executeResult) {
17
+    public HandleCallbackParam(long logId, long logDateTim, ReturnT<String> executeResult) {
18 18
         this.logId = logId;
19 19
         this.logDateTim = logDateTim;
20 20
         this.executeResult = executeResult;
21 21
     }
22 22
 
23
-    public int getLogId() {
23
+    public long getLogId() {
24 24
         return logId;
25 25
     }
26 26
 

+ 3 - 3
xxl-job-core/src/main/java/com/xxl/job/core/biz/model/TriggerParam.java Vedi File

@@ -15,7 +15,7 @@ public class TriggerParam implements Serializable{
15 15
     private String executorBlockStrategy;
16 16
     private int executorTimeout;
17 17
 
18
-    private int logId;
18
+    private long logId;
19 19
     private long logDateTim;
20 20
 
21 21
     private String glueType;
@@ -66,11 +66,11 @@ public class TriggerParam implements Serializable{
66 66
         this.executorTimeout = executorTimeout;
67 67
     }
68 68
 
69
-    public int getLogId() {
69
+    public long getLogId() {
70 70
         return logId;
71 71
     }
72 72
 
73
-    public void setLogId(int logId) {
73
+    public void setLogId(long logId) {
74 74
         this.logId = logId;
75 75
     }
76 76
 

+ 1 - 1
xxl-job-core/src/main/java/com/xxl/job/core/log/XxlJobFileAppender.java Vedi File

@@ -68,7 +68,7 @@ public class XxlJobFileAppender {
68 68
 	 * @param logId
69 69
 	 * @return
70 70
 	 */
71
-	public static String makeLogFileName(Date triggerDate, int logId) {
71
+	public static String makeLogFileName(Date triggerDate, long logId) {
72 72
 
73 73
 		// filePath/yyyy-MM-dd
74 74
 		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");	// avoid concurrent problem, can not be static

+ 2 - 2
xxl-job-core/src/main/java/com/xxl/job/core/thread/JobThread.java Vedi File

@@ -30,7 +30,7 @@ public class JobThread extends Thread{
30 30
 	private int jobId;
31 31
 	private IJobHandler handler;
32 32
 	private LinkedBlockingQueue<TriggerParam> triggerQueue;
33
-	private Set<Integer> triggerLogIdSet;		// avoid repeat trigger for the same TRIGGER_LOG_ID
33
+	private Set<Long> triggerLogIdSet;		// avoid repeat trigger for the same TRIGGER_LOG_ID
34 34
 
35 35
 	private volatile boolean toStop = false;
36 36
 	private String stopReason;
@@ -43,7 +43,7 @@ public class JobThread extends Thread{
43 43
 		this.jobId = jobId;
44 44
 		this.handler = handler;
45 45
 		this.triggerQueue = new LinkedBlockingQueue<TriggerParam>();
46
-		this.triggerLogIdSet = Collections.synchronizedSet(new HashSet<Integer>());
46
+		this.triggerLogIdSet = Collections.synchronizedSet(new HashSet<Long>());
47 47
 	}
48 48
 	public IJobHandler getHandler() {
49 49
 		return handler;