diff --git a/lidee-service/lidee-iot-service/src/main/java/iot/lidee/iot/service/impl/DeviceServiceImpl.java b/lidee-service/lidee-iot-service/src/main/java/iot/lidee/iot/service/impl/DeviceServiceImpl.java index b9e6b97..0502e33 100644 --- a/lidee-service/lidee-iot-service/src/main/java/iot/lidee/iot/service/impl/DeviceServiceImpl.java +++ b/lidee-service/lidee-iot-service/src/main/java/iot/lidee/iot/service/impl/DeviceServiceImpl.java @@ -1876,70 +1876,94 @@ public class DeviceServiceImpl implements IDeviceService { private long deleteDeviceLogBatch(Date cutoffDate) { long totalDeleted = 0; - int batchSize = 5000; + int batchSize = 1000; + int batchCount = 0; while (true) { int deleted = deviceMapper.deleteDeviceLogBatch(cutoffDate, batchSize); totalDeleted += deleted; + batchCount++; + + if (batchCount % 10 == 0) { + log.info("设备日志已删除{}批,累计删除:{}条", batchCount, totalDeleted); + } if (deleted == 0) { break; } try { - Thread.sleep(100); + Thread.sleep(50); } catch (InterruptedException e) { Thread.currentThread().interrupt(); + log.warn("设备日志删除任务被中断"); break; } } + log.info("设备日志删除完成,共{}批,总计删除:{}条", batchCount, totalDeleted); return totalDeleted; } private long deleteEventLogBatch(Date cutoffDate) { long totalDeleted = 0; - int batchSize = 5000; + int batchSize = 1000; + int batchCount = 0; while (true) { int deleted = deviceMapper.deleteEventLogBatch(cutoffDate, batchSize); totalDeleted += deleted; + batchCount++; + + if (batchCount % 10 == 0) { + log.info("事件日志已删除{}批,累计删除:{}条", batchCount, totalDeleted); + } if (deleted == 0) { break; } try { - Thread.sleep(100); + Thread.sleep(50); } catch (InterruptedException e) { Thread.currentThread().interrupt(); + log.warn("事件日志删除任务被中断"); break; } } + log.info("事件日志删除完成,共{}批,总计删除:{}条", batchCount, totalDeleted); return totalDeleted; } private long deleteFunctionLogBatch(Date cutoffDate) { long totalDeleted = 0; - int batchSize = 5000; + int batchSize = 1000; + int batchCount = 0; while (true) { int deleted = deviceMapper.deleteFunctionLogBatch(cutoffDate, batchSize); totalDeleted += deleted; + batchCount++; + + if (batchCount % 10 == 0) { + log.info("告警日志已删除{}批,累计删除:{}条", batchCount, totalDeleted); + } if (deleted == 0) { break; } try { - Thread.sleep(100); + Thread.sleep(50); } catch (InterruptedException e) { Thread.currentThread().interrupt(); + log.warn("告警日志删除任务被中断"); break; } } + log.info("告警日志删除完成,共{}批,总计删除:{}条", batchCount, totalDeleted); return totalDeleted; } } diff --git a/lidee-service/lidee-iot-service/src/main/resources/mapper/iot/DeviceMapper.xml b/lidee-service/lidee-iot-service/src/main/resources/mapper/iot/DeviceMapper.xml index b826b63..f345dc8 100644 --- a/lidee-service/lidee-iot-service/src/main/resources/mapper/iot/DeviceMapper.xml +++ b/lidee-service/lidee-iot-service/src/main/resources/mapper/iot/DeviceMapper.xml @@ -976,7 +976,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - DELETE FROM iot_event log + DELETE FROM iot_event_log WHERE create_time < #{cutoffDate} LIMIT #{batchSize}