feat(1.5.0-beta1): 日志推送改为分页查询

This commit is contained in:
opensnail 2025-04-17 23:26:00 +08:00
parent 087cc1790e
commit d39fb43ef6
2 changed files with 5 additions and 5 deletions

View File

@ -56,7 +56,7 @@ public class JobLogMessageAccess implements JobLogAccess<JobLogMessageDO> {
PageDTO<JobLogMessage> selectPage = jobLogMessageMapper.selectPage( PageDTO<JobLogMessage> selectPage = jobLogMessageMapper.selectPage(
new PageDTO<>(queryDO.getPage(), logPageQueryDO.getSize(), logPageQueryDO.isSearchCount()), new PageDTO<>(queryDO.getPage(), logPageQueryDO.getSize(), logPageQueryDO.isSearchCount()),
new LambdaQueryWrapper<JobLogMessage>() new LambdaQueryWrapper<JobLogMessage>()
.ge(JobLogMessage::getRealTime, logPageQueryDO.getStartRealTime()) .gt(JobLogMessage::getRealTime, logPageQueryDO.getStartRealTime())
.eq(JobLogMessage::getTaskBatchId, logPageQueryDO.getTaskBatchId()) .eq(JobLogMessage::getTaskBatchId, logPageQueryDO.getTaskBatchId())
.eq(JobLogMessage::getTaskId, logPageQueryDO.getTaskId()) .eq(JobLogMessage::getTaskId, logPageQueryDO.getTaskId())
.orderByAsc(JobLogMessage::getId) .orderByAsc(JobLogMessage::getId)

View File

@ -53,8 +53,8 @@ public class JobLogServiceImpl implements JobLogService {
int totalPage = (int) ((total + queryVO.getSize() - 1) / queryVO.getSize()); int totalPage = (int) ((total + queryVO.getSize() - 1) / queryVO.getSize());
Long lastRealTime = null; Long lastRealTime = 0L;
for (int i = 1; i < totalPage; i++) { for (int i = 1; i <= totalPage;) {
for (JobLogMessageDO jobLogMessageDO : pageResponseDO.getRows()) { for (JobLogMessageDO jobLogMessageDO : pageResponseDO.getRows()) {
// 循环覆盖最后一个肯定是最大的 // 循环覆盖最后一个肯定是最大的
lastRealTime = jobLogMessageDO.getRealTime(); lastRealTime = jobLogMessageDO.getRealTime();
@ -75,7 +75,7 @@ public class JobLogServiceImpl implements JobLogService {
// 继续查询下一页 // 继续查询下一页
pageQueryDO.setSearchCount(false); pageQueryDO.setSearchCount(false);
pageQueryDO.setPage((i - 1) * queryVO.getSize()); pageQueryDO.setPage(++i);
pageResponseDO = accessTemplate.getJobLogMessageAccess() pageResponseDO = accessTemplate.getJobLogMessageAccess()
.listPage(pageQueryDO); .listPage(pageQueryDO);
} }
@ -96,7 +96,7 @@ public class JobLogServiceImpl implements JobLogService {
SnailSpringContext.getContext().publishEvent(sendEvent); SnailSpringContext.getContext().publishEvent(sendEvent);
} else { } else {
// 覆盖作为下次查询的起始条件 // 覆盖作为下次查询的起始条件
pageQueryDO.setStartRealTime(lastRealTime); queryVO.setStartRealTime(lastRealTime);
// 继续查询 // 继续查询
scheduleNextAttempt(queryVO, sid); scheduleNextAttempt(queryVO, sid);
} }