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

This commit is contained in:
opensnail 2025-04-17 23:26:00 +08:00
parent 6d62ba29da
commit 840c70a445
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(
new PageDTO<>(queryDO.getPage(), logPageQueryDO.getSize(), logPageQueryDO.isSearchCount()),
new LambdaQueryWrapper<JobLogMessage>()
.ge(JobLogMessage::getRealTime, logPageQueryDO.getStartRealTime())
.gt(JobLogMessage::getRealTime, logPageQueryDO.getStartRealTime())
.eq(JobLogMessage::getTaskBatchId, logPageQueryDO.getTaskBatchId())
.eq(JobLogMessage::getTaskId, logPageQueryDO.getTaskId())
.orderByAsc(JobLogMessage::getId)

View File

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