summaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorlijinyang <[email protected]>2023-11-29 14:01:40 +0800
committerlijinyang <[email protected]>2023-11-29 14:01:40 +0800
commit80ff2eb43d72a0c2ab6ccf66a2966b78906055dc (patch)
tree3af46cfd6b13f173c5a29994c1679d1fcd249798 /src/main
parente8293348a19e723185e3f093d01a70f649eae13d (diff)
fix:job结果信息补全及歧义修正23.11.29
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/com/mesa/reportservice/controller/ScheduledResultController.java7
-rw-r--r--src/main/java/com/mesa/reportservice/service/impl/ExcuteProcessServiceImpl.java12
-rw-r--r--src/main/java/com/mesa/reportservice/service/impl/ExcuteserviceImpl.java3
-rw-r--r--src/main/java/com/mesa/reportservice/service/impl/MysqlServiceImpl.java13
-rw-r--r--src/main/resources/mappers/ReportResultMapper.xml18
5 files changed, 37 insertions, 16 deletions
diff --git a/src/main/java/com/mesa/reportservice/controller/ScheduledResultController.java b/src/main/java/com/mesa/reportservice/controller/ScheduledResultController.java
index 79f9c47..ea8345f 100644
--- a/src/main/java/com/mesa/reportservice/controller/ScheduledResultController.java
+++ b/src/main/java/com/mesa/reportservice/controller/ScheduledResultController.java
@@ -74,7 +74,7 @@ public class ScheduledResultController {
}
}
- //遍历内存中的任务对状态1的更新进度,其他更新数据库的状态
+ //遍历内存中的任务对状态RUNNING的更新进度,其他更新数据库的状态
for (Map.Entry<String, JobEntity> entry : gc.getMapresult().entrySet()) {
logger.info("key = " + entry.getKey() + ", value = " + entry.getValue().getState());
long currentTime = System.currentTimeMillis();
@@ -98,7 +98,7 @@ public class ScheduledResultController {
List<JobEntity> jobs = ms.getJobTask(rows);
for (JobEntity job : jobs) {
logger.info("start executing task");
- long begintime = System.currentTimeMillis();
+ long begintime = System.currentTimeMillis()/1000;
job.setStartTime(begintime);
String sql = job.getQuerySql().trim();
/* sql = sql.replace("$exe_time", "toDateTime('" + job.getIssuedTime().trim() + "')");
@@ -118,7 +118,10 @@ public class ScheduledResultController {
if (queryid.equals("") ) {
job.setExcuteStatus(0);
job.setState("DONE");
+ job.setEndTime(System.currentTimeMillis()/1000);
//status = 7
+ job.setDoneProgress(1.00f);
+ job.setIsFailed(1);
job.setResultMessage("Unknow Error");
}
if (("RUNNING").equals(job.getState())) {
diff --git a/src/main/java/com/mesa/reportservice/service/impl/ExcuteProcessServiceImpl.java b/src/main/java/com/mesa/reportservice/service/impl/ExcuteProcessServiceImpl.java
index 10e4bbb..2df61f9 100644
--- a/src/main/java/com/mesa/reportservice/service/impl/ExcuteProcessServiceImpl.java
+++ b/src/main/java/com/mesa/reportservice/service/impl/ExcuteProcessServiceImpl.java
@@ -34,23 +34,21 @@ public class ExcuteProcessServiceImpl implements ExcuteProcessService {
private GlobelConfig gc;
@Override
public void updateResultMessage(JobEntity je) {
-
-
+ je.setState("DONE");
+ je.setEndTime(System.currentTimeMillis()/1000);
+ je.setDoneProgress(1.00f);
+ je.setIsFailed(1);
try {
if (je.getIsValid() == 0) {
//status = 9
- je.setState("DONE");
je.setResultMessage("CANCEL");
} else {
- je.setState("DONE");
- je.setIsFailed(1);
if (je.getExcuteStatus() >= 20000000 && je.getExcuteStatus() < 30000000) {
Boolean isok = saveToHbase(je);
if (isok) {
//status = 2
je.setResultMessage("OK");
- je.setDoneProgress(1.00f);
je.setIsFailed(0);
logger.info("success save to hbase query_id=" + je.getQueryId() + " job_id =" + je.getJobId() + " excute_sql=" + je.getQuerySql());
} else {
@@ -86,8 +84,6 @@ public class ExcuteProcessServiceImpl implements ExcuteProcessService {
while (number != 1 && z >= 0);
} catch (Exception e) {
//status = 10
- je.setState("DONE");
- je.setIsFailed(1);
je.setResultMessage("Database Error");
ms.updateProcesses(je);
logger.error("save database error job_id =" + je.getJobId()+" query_id=" + je.getQueryId() + e.toString());
diff --git a/src/main/java/com/mesa/reportservice/service/impl/ExcuteserviceImpl.java b/src/main/java/com/mesa/reportservice/service/impl/ExcuteserviceImpl.java
index 11e5a76..8619b87 100644
--- a/src/main/java/com/mesa/reportservice/service/impl/ExcuteserviceImpl.java
+++ b/src/main/java/com/mesa/reportservice/service/impl/ExcuteserviceImpl.java
@@ -53,6 +53,8 @@ public class ExcuteserviceImpl implements ExcuteService {
Map rows = (Map) mapresult.get("statistics");
job.setResultRows(Long.parseLong(rows.get("result_rows").toString()));
job.setRowsRead(Long.parseLong(rows.get("rows_read").toString()));
+ job.setBytesRead(Long.parseLong(rows.get("bytes_read").toString()));
+ job.setResultBytes(Long.parseLong(rows.get("result_bytes").toString()));
job.setResult(hr.getBody());
job.setElapsed((int) Float.parseFloat(rows.get("elapsed").toString()));
job.setExcuteStatus(Integer.parseInt(mapresult.get("code").toString()));
@@ -106,6 +108,7 @@ public class ExcuteserviceImpl implements ExcuteService {
}
while (k > 0);
job.setState("DONE");
+ job.setEndTime(System.currentTimeMillis()/1000);
}
}
diff --git a/src/main/java/com/mesa/reportservice/service/impl/MysqlServiceImpl.java b/src/main/java/com/mesa/reportservice/service/impl/MysqlServiceImpl.java
index 60f7557..bfc95ac 100644
--- a/src/main/java/com/mesa/reportservice/service/impl/MysqlServiceImpl.java
+++ b/src/main/java/com/mesa/reportservice/service/impl/MysqlServiceImpl.java
@@ -10,6 +10,8 @@ import org.springframework.stereotype.Service;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
+import java.time.LocalDate;
+import java.time.ZoneOffset;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
@@ -48,8 +50,8 @@ public class MysqlServiceImpl implements MysqlService {
@Override
public int updateProcesses(JobEntity job){
- Date currentTime = new Date();
- job.setLastUpdateTime(currentTime.getTime());
+ long currentTime = System.currentTimeMillis()/1000;
+ job.setLastUpdateTime(currentTime);
return rrm.updateProcesses(job);
}
@@ -57,11 +59,10 @@ public class MysqlServiceImpl implements MysqlService {
@Override
public Map<String,Long> getJobCount() {
- String current_time = DateUtil.getDate();
- String today_time = DateUtil.getCurrentDate();
+ LocalDate currentDate = LocalDate.now();
+ long current_date = currentDate.atStartOfDay(ZoneOffset.UTC).toInstant().toEpochMilli();
HashMap map = new HashMap();
- map.put("issuedtime", current_time);
- map.put("optime", today_time);
+ map.put("lastUpdateTime", current_date);
return rrm.getJobCount(map);
}
diff --git a/src/main/resources/mappers/ReportResultMapper.xml b/src/main/resources/mappers/ReportResultMapper.xml
index 2bc828b..e0b69c4 100644
--- a/src/main/resources/mappers/ReportResultMapper.xml
+++ b/src/main/resources/mappers/ReportResultMapper.xml
@@ -44,6 +44,9 @@
<if test="state != null" >
state = #{state,jdbcType=VARCHAR},
</if>
+ <if test="isFailed != null" >
+ is_failed = #{isFailed,jdbcType=INTEGER},
+ </if>
<if test="elapsed != null" >
elapsed = #{elapsed,jdbcType=INTEGER},
</if>
@@ -56,6 +59,18 @@
<if test="resultMessage != null" >
result_message = #{resultMessage,jdbcType=VARCHAR},
</if>
+ <if test="bytesRead != null" >
+ bytes_read = #{bytesRead,jdbcType=BIGINT},
+ </if>
+ <if test="resultBytes != null" >
+ result_bytes = #{resultBytes,jdbcType=BIGINT},
+ </if>
+ <if test="startTime != null" >
+ start_time = #{startTime,jdbcType=BIGINT},
+ </if>
+ <if test="endTime != null" >
+ end_time = #{endTime,jdbcType=BIGINT},
+ </if>
<if test="lastUpdateTime != null" >
last_update_time = #{lastUpdateTime,jdbcType=BIGINT},
</if>
@@ -76,6 +91,9 @@
<if test="state != null" >
state = #{state,jdbcType=VARCHAR},
</if>
+ <if test="isFailed != null" >
+ is_failed = #{isFailed,jdbcType=INTEGER},
+ </if>
<if test="resultMessage != null" >
result_message = #{resultMessage,jdbcType=VARCHAR},
</if>