|
|
@@ -134,14 +134,15 @@ public class ExternalChannelProcessJob {
|
|
|
log.info("已将{}条创建时间早于{}的记录标记为失败", failedCount, beforeDaysTime);
|
|
|
}
|
|
|
|
|
|
- // 1. 循环分页查询并处理待处理的记录(status=0),仅查询指定时间之后的记录
|
|
|
+ // 1. 循环分页查询并处理待处理的记录(status=0),使用id>lastId方式分页
|
|
|
int totalProcessed = 0;
|
|
|
int pageNum = 0;
|
|
|
+ long lastId = 0;
|
|
|
List<ExternalChannel> pendingList;
|
|
|
|
|
|
do {
|
|
|
pageNum++;
|
|
|
- pendingList = externalChannelMapperExt.selectPendingList(QUERY_LIMIT, beforeDaysTime);
|
|
|
+ pendingList = externalChannelMapperExt.selectPendingList(lastId, QUERY_LIMIT, beforeDaysTime);
|
|
|
|
|
|
if (CollectionUtils.isEmpty(pendingList)) {
|
|
|
if (pageNum == 1) {
|
|
|
@@ -150,7 +151,9 @@ public class ExternalChannelProcessJob {
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
- log.info("第{}页, 找到{}条待处理记录", pageNum, pendingList.size());
|
|
|
+ // 更新lastId为本页最后一条记录的id
|
|
|
+ lastId = pendingList.get(pendingList.size() - 1).getId();
|
|
|
+ log.info("第{}页, 找到{}条待处理记录, lastId={}", pageNum, pendingList.size(), lastId);
|
|
|
|
|
|
// 2. 逐条处理
|
|
|
for (ExternalChannel record : pendingList) {
|