diff options
| author | lijinyang <[email protected]> | 2023-11-29 14:01:40 +0800 |
|---|---|---|
| committer | lijinyang <[email protected]> | 2023-11-29 14:01:40 +0800 |
| commit | 80ff2eb43d72a0c2ab6ccf66a2966b78906055dc (patch) | |
| tree | 3af46cfd6b13f173c5a29994c1679d1fcd249798 /src/main | |
| parent | e8293348a19e723185e3f093d01a70f649eae13d (diff) | |
fix:job结果信息补全及歧义修正23.11.29
Diffstat (limited to 'src/main')
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> |
