1712 lines
71 KiB
JSON
1712 lines
71 KiB
JSON
{
|
||
"configs": [
|
||
{
|
||
"key": "upload-max-retries",
|
||
"value": "${AIIMAGE_TRANSIENT_STORAGE_UPLOAD_MAX_RETRIES:3}",
|
||
"line": 119,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "warn-payload-bytes",
|
||
"value": "${AIIMAGE_TRANSIENT_STORAGE_WARN_PAYLOAD_BYTES:5242880}",
|
||
"line": 136,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "max-payload-bytes",
|
||
"value": "${AIIMAGE_TRANSIENT_STORAGE_MAX_PAYLOAD_BYTES:52428800}",
|
||
"line": 137,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "max-stored-payload-bytes",
|
||
"value": "${AIIMAGE_TRANSIENT_STORAGE_MAX_STORED_PAYLOAD_BYTES:52428800}",
|
||
"line": 138,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "local-temp-dir",
|
||
"value": "${AIIMAGE_STORAGE_LOCAL_TEMP_DIR:./data/tmp}",
|
||
"line": 146,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "source-retention-hours",
|
||
"value": "${AIIMAGE_STORAGE_SOURCE_RETENTION_HOURS:24}",
|
||
"line": 149,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "result-retention-hours",
|
||
"value": "${AIIMAGE_STORAGE_RESULT_RETENTION_HOURS:24}",
|
||
"line": 150,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "transient-payload-retention-hours",
|
||
"value": "${AIIMAGE_STORAGE_TRANSIENT_PAYLOAD_RETENTION_HOURS:72}",
|
||
"line": 151,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "temp-dir",
|
||
"value": "",
|
||
"line": 152,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "retention-hours",
|
||
"value": "${AIIMAGE_TEMP_DIR_RETENTION_HOURS:24}",
|
||
"line": 153,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "retention-days",
|
||
"value": "${AIIMAGE_MODULE_CLEANUP_RETENTION_DAYS:7}",
|
||
"line": 183,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "scope-payload-flush-interval-millis",
|
||
"value": "${AIIMAGE_TASK_SCOPE_PAYLOAD_FLUSH_INTERVAL_MILLIS:15000}",
|
||
"line": 190,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "scope-payload-buffer-retention-hours",
|
||
"value": "${AIIMAGE_TASK_SCOPE_PAYLOAD_BUFFER_RETENTION_HOURS:24}",
|
||
"line": 191,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "scope-payload-recovery-max-files",
|
||
"value": "${AIIMAGE_TASK_SCOPE_PAYLOAD_RECOVERY_MAX_FILES:200}",
|
||
"line": 192,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "scope-payload-cleanup-cron",
|
||
"value": "${AIIMAGE_TASK_SCOPE_PAYLOAD_CLEANUP_CRON:15 */30 * * * *}",
|
||
"line": 193,
|
||
"source": "application.yml"
|
||
},
|
||
{
|
||
"key": "retention-days",
|
||
"value": "${AIIMAGE_TASK_IMAGE_CACHE_RETENTION_DAYS:3}",
|
||
"line": 197,
|
||
"source": "application.yml"
|
||
}
|
||
],
|
||
"cleanup_calls": [
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/config/ModuleCleanupProperties.java",
|
||
"line": 10,
|
||
"snippet": "@ConfigurationProperties(prefix = \"aiimage.module-cleanup\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/config/ModuleCleanupProperties.java",
|
||
"line": 11,
|
||
"snippet": "public class ModuleCleanupProperties {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/config/PropertiesConfig.java",
|
||
"line": 7,
|
||
"snippet": "@EnableConfigurationProperties({OssProperties.class, TransientStorageProperties.class, StorageProper"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/config/StorageProperties.java",
|
||
"line": 11,
|
||
"snippet": "private String localTempDir;"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/config/StorageProperties.java",
|
||
"line": 12,
|
||
"snippet": "private boolean cleanupEnabled = true;"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/config/StorageProperties.java",
|
||
"line": 13,
|
||
"snippet": "private String cleanupCron = \"0 0 * * * *\";"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/config/StorageProperties.java",
|
||
"line": 18,
|
||
"snippet": "public String getLocalTempDir() {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/config/StorageProperties.java",
|
||
"line": 19,
|
||
"snippet": "String configured = localTempDir == null ? \"\" : localTempDir.trim();"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/config/TaskImageCacheCleanupProperties.java",
|
||
"line": 7,
|
||
"snippet": "@ConfigurationProperties(prefix = \"aiimage.task-image-cache-cleanup\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/config/TaskImageCacheCleanupProperties.java",
|
||
"line": 8,
|
||
"snippet": "public class TaskImageCacheCleanupProperties {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/config/TaskPressureProperties.java",
|
||
"line": 18,
|
||
"snippet": "private String scopePayloadCleanupCron = \"15 */30 * * * *\";"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java",
|
||
"line": 1163,
|
||
"snippet": "transientPayloadStorageService.deleteReplacedPayloadIfNeeded(oldPayload, storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java",
|
||
"line": 1166,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java",
|
||
"line": 1824,
|
||
"snippet": "public void cleanupResultFileJob(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java",
|
||
"line": 1849,
|
||
"snippet": "File outputDir = new File(storageProperties.getLocalTempDir(), \"appearance-patent-result\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java",
|
||
"line": 2919,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(scope.getParsedPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java",
|
||
"line": 2920,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(scope.getStateJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java",
|
||
"line": 2929,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(chunk.getPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskService.java",
|
||
"line": 674,
|
||
"snippet": "File outputDir = FileUtil.mkdir(FileUtil.file(storageProperties.getLocalTempDir(), \"brand-result\", S"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskService.java",
|
||
"line": 725,
|
||
"snippet": "cleanupBrandResultTempFiles(outputEntries, outputDir);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskService.java",
|
||
"line": 822,
|
||
"snippet": "File downloadDir = FileUtil.mkdir(FileUtil.file(storageProperties.getLocalTempDir(), \"brand-source-d"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskService.java",
|
||
"line": 1097,
|
||
"snippet": "File zipDir = FileUtil.mkdir(FileUtil.file(storageProperties.getLocalTempDir(), \"brand-result\", Stri"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskService.java",
|
||
"line": 1110,
|
||
"snippet": "private void cleanupBrandResultTempFiles(List<OutputEntry> entries, File outputDir) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskService.java",
|
||
"line": 1129,
|
||
"snippet": "File managedDir = FileUtil.file(storageProperties.getLocalTempDir(), \"brand-source-download\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskService.java",
|
||
"line": 1142,
|
||
"snippet": "FileUtil.del(file);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskStorageService.java",
|
||
"line": 75,
|
||
"snippet": "transientPayloadStorageService.deleteReplacedPayloadIfNeeded(state.getParsedPayloadJson(), parsedJso"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskStorageService.java",
|
||
"line": 157,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskStorageService.java",
|
||
"line": 162,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskStorageService.java",
|
||
"line": 250,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(state.getParsedPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskStorageService.java",
|
||
"line": 251,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(state.getStateJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskStorageService.java",
|
||
"line": 260,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(chunk.getPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskStorageService.java",
|
||
"line": 301,
|
||
"snippet": "transientPayloadStorageService.deleteReplacedPayloadIfNeeded(state.getStateJson(), storedAggregate);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/brand/service/BrandTaskStorageService.java",
|
||
"line": 303,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedAggregate);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/collectdata/service/CollectDataExcelAssemblyService.java",
|
||
"line": 89,
|
||
"snippet": "Files.deleteIfExists(file.toPath());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/collectdata/service/CollectDataService.java",
|
||
"line": 827,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/collectdata/service/CollectDataService.java",
|
||
"line": 933,
|
||
"snippet": "FileUtil.del(xlsx);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/collectdata/service/CollectDataService.java",
|
||
"line": 1004,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/collectdata/service/CollectDataService.java",
|
||
"line": 1198,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(chunk.getPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/collectdata/service/CollectDataService.java",
|
||
"line": 1215,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(ref.pointer());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/collectdata/service/CollectDataService.java",
|
||
"line": 1218,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(item.getPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/collectdata/util/CollectDataResultItemBatchWriter.java",
|
||
"line": 103,
|
||
"snippet": "// (deletePayloadIfPresent 内部带全局引用计数兜底)。"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/collectdata/util/CollectDataResultItemBatchWriter.java",
|
||
"line": 106,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(existing.getPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/convert/controller/ConvertTemplateController.java",
|
||
"line": 70,
|
||
"snippet": "convertTemplateService.deleteTemplate(templateCode);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/convert/service/ConvertRunService.java",
|
||
"line": 241,
|
||
"snippet": "File outputDir = FileUtil.mkdir(FileUtil.file(storageProperties.getLocalTempDir(), \"convert-result\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/convert/service/ConvertRunService.java",
|
||
"line": 388,
|
||
"snippet": "File outputDir = FileUtil.mkdir(FileUtil.file(storageProperties.getLocalTempDir(), \"convert-result\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/convert/service/ConvertRunService.java",
|
||
"line": 404,
|
||
"snippet": "File outputDir = FileUtil.mkdir(FileUtil.file(storageProperties.getLocalTempDir(), \"convert-result\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/convert/service/ConvertRunService.java",
|
||
"line": 458,
|
||
"snippet": "File baseDir = FileUtil.file(storageProperties.getLocalTempDir());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/convert/service/ConvertTemplateService.java",
|
||
"line": 79,
|
||
"snippet": "public void deleteTemplate(String templateCode) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/dedupe/service/DedupeRunService.java",
|
||
"line": 97,
|
||
"snippet": "File outputDir = FileUtil.mkdir(FileUtil.file(storageProperties.getLocalTempDir(), \"dedupe-result\"))"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/dedupe/service/DedupeRunService.java",
|
||
"line": 495,
|
||
"snippet": "File outputDir = FileUtil.mkdir(FileUtil.file(storageProperties.getLocalTempDir(), \"dedupe-result\"))"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/dedupe/service/DedupeRunService.java",
|
||
"line": 572,
|
||
"snippet": "File baseDir = FileUtil.file(storageProperties.getLocalTempDir());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/dedupe/service/DedupeTotalDataService.java",
|
||
"line": 410,
|
||
"snippet": "cleanupExpiredProgress();"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/dedupe/service/DedupeTotalDataService.java",
|
||
"line": 446,
|
||
"snippet": "cleanupExpiredProgress();"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/dedupe/service/DedupeTotalDataService.java",
|
||
"line": 462,
|
||
"snippet": "cleanupExpiredProgress();"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/dedupe/service/DedupeTotalDataService.java",
|
||
"line": 498,
|
||
"snippet": "cleanupExpiredProgress();"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/dedupe/service/DedupeTotalDataService.java",
|
||
"line": 579,
|
||
"snippet": "Files.deleteIfExists(file.toPath());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/dedupe/service/DedupeTotalDataService.java",
|
||
"line": 1095,
|
||
"snippet": "private void cleanupExpiredProgress() {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/dedupe/service/DedupeTotalDataService.java",
|
||
"line": 1097,
|
||
"snippet": "cleanupExpiredProgressEntries("
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/dedupe/service/DedupeTotalDataService.java",
|
||
"line": 1099,
|
||
"snippet": "cleanupExpiredProgressEntries("
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/dedupe/service/DedupeTotalDataService.java",
|
||
"line": 1104,
|
||
"snippet": "private void cleanupExpiredProgressEntries("
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandRunService.java",
|
||
"line": 1701,
|
||
"snippet": "cleanupCompletedTaskDataIfNoPendingFileJobs(task.getId());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandRunService.java",
|
||
"line": 1774,
|
||
"snippet": "public void cleanupResultFileJob(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandRunService.java",
|
||
"line": 1782,
|
||
"snippet": "cleanupCompletedTaskDataIfNoPendingFileJobs(job.getTaskId());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandRunService.java",
|
||
"line": 1785,
|
||
"snippet": "private void cleanupCompletedTaskDataIfNoPendingFileJobs(Long taskId) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandRunService.java",
|
||
"line": 1958,
|
||
"snippet": "FileUtil.del(file);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandStaleTaskService.java",
|
||
"line": 58,
|
||
"snippet": "private static final Duration TEMP_DIR_CLEANUP_LOCK_TTL = Duration.ofMinutes(10);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandStaleTaskService.java",
|
||
"line": 85,
|
||
"snippet": "private long tempDirRetentionHours;"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandStaleTaskService.java",
|
||
"line": 747,
|
||
"snippet": "@Scheduled(cron = \"${aiimage.temp-dir.cleanup-cron:15 */30 * * * *}\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandStaleTaskService.java",
|
||
"line": 748,
|
||
"snippet": "public void cleanupExpiredTempDirs() {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandStaleTaskService.java",
|
||
"line": 750,
|
||
"snippet": "distributedJobLockService.tryLock(\"temp-dir:cleanup\", TEMP_DIR_CLEANUP_LOCK_TTL);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandStaleTaskService.java",
|
||
"line": 752,
|
||
"snippet": "log.info(\"[temp-dir-cleanup] skip because another instance holds the distributed lock\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandStaleTaskService.java",
|
||
"line": 756,
|
||
"snippet": "Instant cutoff = Instant.now().minus(Duration.ofHours(Math.max(1L, tempDirRetentionHours)));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandStaleTaskService.java",
|
||
"line": 770,
|
||
"snippet": "cleanupTempRoot(dirName, cutoff);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandStaleTaskService.java",
|
||
"line": 775,
|
||
"snippet": "private void cleanupTempRoot(String dirName, Instant cutoff) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandStaleTaskService.java",
|
||
"line": 788,
|
||
"snippet": "log.info(\"[temp-dir-cleanup] deleted expired temp path dir={} path={}\", dirName, child);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandStaleTaskService.java",
|
||
"line": 790,
|
||
"snippet": "log.warn(\"[temp-dir-cleanup] delete failed dir={} path={} msg={}\", dirName, child, ex.getMessage());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandStaleTaskService.java",
|
||
"line": 794,
|
||
"snippet": "log.warn(\"[temp-dir-cleanup] scan failed dir={} msg={}\", dirName, ex.getMessage());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandStaleTaskService.java",
|
||
"line": 805,
|
||
"snippet": "Files.deleteIfExists(item);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandTaskStorageService.java",
|
||
"line": 83,
|
||
"snippet": "transientPayloadStorageService.deleteReplacedPayloadIfNeeded(existing.getParsedPayloadJson(), parsed"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandTaskStorageService.java",
|
||
"line": 194,
|
||
"snippet": "transientPayloadStorageService.deleteReplacedPayloadIfNeeded(concurrentChunk.getPayloadJson(), store"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandTaskStorageService.java",
|
||
"line": 200,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandTaskStorageService.java",
|
||
"line": 209,
|
||
"snippet": "transientPayloadStorageService.deleteReplacedPayloadIfNeeded(existingChunk.getPayloadJson(), storedP"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandTaskStorageService.java",
|
||
"line": 266,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(state.getParsedPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandTaskStorageService.java",
|
||
"line": 267,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(state.getStateJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandTaskStorageService.java",
|
||
"line": 276,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(chunk.getPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalFileStorageService.java",
|
||
"line": 41,
|
||
"snippet": "File tempDir = FileUtil.file(storageProperties.getLocalTempDir());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalFileStorageService.java",
|
||
"line": 42,
|
||
"snippet": "File parentDir = tempDir.getParentFile();"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalFileStorageService.java",
|
||
"line": 46,
|
||
"snippet": "FileUtil.mkdir(tempDir);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalFileStorageService.java",
|
||
"line": 50,
|
||
"snippet": "File target = FileUtil.file(tempDir, filename);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalFileStorageService.java",
|
||
"line": 118,
|
||
"snippet": "File baseDir = FileUtil.file(storageProperties.getLocalTempDir());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 19,
|
||
"snippet": "public class LocalTempCleanupService {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 35,
|
||
"snippet": "@Scheduled(cron = \"${aiimage.storage.cleanup-cron:0 0 */6 * * *}\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 36,
|
||
"snippet": "public void cleanupLocalTempDir() {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 37,
|
||
"snippet": "if (!storageProperties.isCleanupEnabled()) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 40,
|
||
"snippet": "File tempDir = FileUtil.file(storageProperties.getLocalTempDir());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 41,
|
||
"snippet": "if (!tempDir.exists() || !tempDir.isDirectory()) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 53,
|
||
"snippet": "File[] children = tempDir.listFiles();"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 61,
|
||
"snippet": "if (FileUtil.del(child)) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 68,
|
||
"snippet": "deleteEmptyDirectories(child, tempDir);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 73,
|
||
"snippet": "deleteEmptyDirectories(child, tempDir);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 76,
|
||
"snippet": "log.warn(\"local temp cleanup failed: path={}\", child.getAbsolutePath(), ex);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 81,
|
||
"snippet": "log.info(\"local temp cleanup completed: sourceDeleted={}, resultDeleted={}, transientPayloadDeleted="
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 82,
|
||
"snippet": "deletedSourceCount, deletedResultCount, deletedTransientPayloadCount, tempDir.getAbsolutePath());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 95,
|
||
"snippet": "if (isExpired(file, expireBefore) && isDirectoryEmpty(file) && FileUtil.del(file)) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 100,
|
||
"snippet": "if (isExpired(file, expireBefore) && FileUtil.del(file)) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/file/service/LocalTempCleanupService.java",
|
||
"line": 109,
|
||
"snippet": "if (!FileUtil.del(current)) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoArchiveService.java",
|
||
"line": 38,
|
||
"snippet": "private static final int RETENTION_CLEANUP_BATCH_SIZE = 200;"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoArchiveService.java",
|
||
"line": 108,
|
||
"snippet": "@Scheduled(fixedDelayString = \"${aiimage.image-video.retention-cleanup-delay-ms:600000}\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoArchiveService.java",
|
||
"line": 109,
|
||
"snippet": "public void cleanupExpiredWorkflowTasks() {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoArchiveService.java",
|
||
"line": 116,
|
||
"snippet": ".last(\"LIMIT \" + RETENTION_CLEANUP_BATCH_SIZE));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoArchiveService.java",
|
||
"line": 125,
|
||
"snippet": "log.info(\"[image-video] expired workflow task cleanup deleted={} cutoff={}\", deleted, cutoff);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoArchiveService.java",
|
||
"line": 141,
|
||
"snippet": "log.warn(\"[image-video] expired task OSS cleanup failed taskId={} objectKey={} error={}\","
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoAsyncTaskService.java",
|
||
"line": 164,
|
||
"snippet": "@Scheduled(fixedDelayString = \"${aiimage.image-video.failed-task-cleanup-delay-ms:60000}\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoAsyncTaskService.java",
|
||
"line": 165,
|
||
"snippet": "public void cleanupFailedTasks() {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/patroldelete/service/PatrolDeleteTaskService.java",
|
||
"line": 484,
|
||
"snippet": "cleanupTaskAuxiliaryDataFast(taskId);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/patroldelete/service/PatrolDeleteTaskService.java",
|
||
"line": 512,
|
||
"snippet": "cleanupResultAuxiliaryDataFast(taskId, resultId);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/patroldelete/service/PatrolDeleteTaskService.java",
|
||
"line": 521,
|
||
"snippet": "cleanupResultAuxiliaryDataFast(taskId, resultId);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/patroldelete/service/PatrolDeleteTaskService.java",
|
||
"line": 536,
|
||
"snippet": "cleanupTaskAuxiliaryDataFast(taskId);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/patroldelete/service/PatrolDeleteTaskService.java",
|
||
"line": 546,
|
||
"snippet": "private void cleanupTaskAuxiliaryData(Long taskId) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/patroldelete/service/PatrolDeleteTaskService.java",
|
||
"line": 552,
|
||
"snippet": "private void cleanupTaskAuxiliaryDataFast(Long taskId) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/patroldelete/service/PatrolDeleteTaskService.java",
|
||
"line": 559,
|
||
"snippet": "private void cleanupResultAuxiliaryData(Long taskId, Long resultId) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/patroldelete/service/PatrolDeleteTaskService.java",
|
||
"line": 564,
|
||
"snippet": "private void cleanupResultAuxiliaryDataFast(Long taskId, Long resultId) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/patroldelete/service/PatrolDeleteTaskService.java",
|
||
"line": 1029,
|
||
"snippet": "FileUtil.del(xlsx);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/pricetrack/service/PriceTrackTaskService.java",
|
||
"line": 312,
|
||
"snippet": "cleanupTaskCacheIfTerminal(taskId, task.getStatus());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/pricetrack/service/PriceTrackTaskService.java",
|
||
"line": 639,
|
||
"snippet": "cleanupTaskCacheIfTerminal(taskId, task.getStatus());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/pricetrack/service/PriceTrackTaskService.java",
|
||
"line": 653,
|
||
"snippet": "cleanupTaskCacheIfTerminal(taskId, task.getStatus());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/pricetrack/service/PriceTrackTaskService.java",
|
||
"line": 749,
|
||
"snippet": "cleanupTaskCacheIfTerminal(taskId, \"DELETE_EMPTY\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/pricetrack/service/PriceTrackTaskService.java",
|
||
"line": 793,
|
||
"snippet": "cn.hutool.core.io.FileUtil.del(xlsx);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/pricetrack/service/PriceTrackTaskService.java",
|
||
"line": 2092,
|
||
"snippet": "cleanupTaskCacheIfTerminal(task.getId(), task.getStatus());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/pricetrack/service/PriceTrackTaskService.java",
|
||
"line": 2130,
|
||
"snippet": "private void cleanupTaskCacheIfTerminal(Long taskId, String taskStatus) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/productrisk/service/ProductRiskTaskService.java",
|
||
"line": 288,
|
||
"snippet": "cleanupTaskCacheIfTerminal(taskId, \"DELETE_EMPTY\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/productrisk/service/ProductRiskTaskService.java",
|
||
"line": 367,
|
||
"snippet": "cleanupTaskCacheIfTerminal(taskId, \"DELETE_EMPTY\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/productrisk/service/ProductRiskTaskService.java",
|
||
"line": 420,
|
||
"snippet": "cleanupTaskCacheIfTerminal(taskId, task.getStatus());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/productrisk/service/ProductRiskTaskService.java",
|
||
"line": 833,
|
||
"snippet": "FileUtil.del(xlsx);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/productrisk/service/ProductRiskTaskService.java",
|
||
"line": 834,
|
||
"snippet": "FileUtil.del(zip);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/productrisk/service/ProductRiskTaskService.java",
|
||
"line": 951,
|
||
"snippet": "cleanupTaskCacheIfTerminal(task.getId(), task.getStatus());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/productrisk/service/ProductRiskTaskService.java",
|
||
"line": 954,
|
||
"snippet": "private void cleanupTaskCacheIfTerminal(Long taskId, String taskStatus) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
|
||
"line": 283,
|
||
"snippet": "if (committed != null && committed.cleanupAfterCommit()) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
|
||
"line": 287,
|
||
"snippet": "log.warn(\"[publish] failed-task chunk cleanup failed taskId={} msg={}\","
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
|
||
"line": 447,
|
||
"snippet": "log.warn(\"[publish] stale task cleanup failed taskId={} msg={}\","
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
|
||
"line": 532,
|
||
"snippet": "FileUtil.del(workDirectory);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
|
||
"line": 549,
|
||
"snippet": "log.warn(\"[publish] OSS cleanup failed taskId={} resultId={} msg={}\","
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
|
||
"line": 575,
|
||
"snippet": "public void cleanupResultFileJob(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
|
||
"line": 592,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(chunk.getPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
|
||
"line": 610,
|
||
"snippet": "log.info(\"[publish] skip uncommitted payload cleanup because it is referenced pointer={}\","
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
|
||
"line": 614,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
|
||
"line": 616,
|
||
"snippet": "log.warn(\"[publish] uncommitted RustFS payload cleanup failed pointer={} msg={}\","
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
|
||
"line": 682,
|
||
"snippet": "ensureTaskOwnedByCurrentInstance(task, \"cleanup stale publish task\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
|
||
"line": 1516,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
|
||
"line": 1917,
|
||
"snippet": "private record SubmitResultCommit(boolean cleanupAfterCommit,"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/queryasin/service/QueryAsinTaskService.java",
|
||
"line": 988,
|
||
"snippet": "FileUtil.del(xlsx);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 158,
|
||
"snippet": "cleanupResultChunksQuietly(task.getId(), \"stale task failure\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 690,
|
||
"snippet": "// A task deletion is only a frontend task-record cleanup. The daily"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 863,
|
||
"snippet": "registerRollbackObjectCleanup(uploadedObjectKeys);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 999,
|
||
"snippet": "FileUtil.del(outputXlsx);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 1000,
|
||
"snippet": "FileUtil.del(workRoot);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 1350,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 1358,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 1373,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 1598,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 1752,
|
||
"snippet": "cleanupResultChunksQuietly(task.getId(), \"terminal task without workbook\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 1942,
|
||
"snippet": "FileUtil.del(outputXlsx);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 1943,
|
||
"snippet": "FileUtil.del(workRoot);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 2277,
|
||
"snippet": "private void registerRollbackObjectCleanup(List<String> uploadedObjectKeys) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 2319,
|
||
"snippet": "log.warn(\"[shop-data-crawl] daily object cleanup failed object={} msg={}\", objectKey, safeMessage(ex"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 2421,
|
||
"snippet": "public void cleanupResultFileJob(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 2458,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(chunk.getPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 2470,
|
||
"snippet": "private void cleanupResultChunksQuietly(Long taskId, String reason) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 2474,
|
||
"snippet": "log.warn(\"[shop-data-crawl] result chunk cleanup failed taskId={} reason={} msg={}\","
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 2581,
|
||
"snippet": "FileUtil.del(outputXlsx);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 2582,
|
||
"snippet": "FileUtil.del(workRoot);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopdatacrawl/service/ShopDataCrawlTaskService.java",
|
||
"line": 2844,
|
||
"snippet": "cleanupResultChunksQuietly(task.getId(), \"result file job exhausted\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopkey/service/QueryAsinService.java",
|
||
"line": 397,
|
||
"snippet": "Files.deleteIfExists(file.toPath());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopkey/service/SkipPriceAsinService.java",
|
||
"line": 782,
|
||
"snippet": "Files.deleteIfExists(file.toPath());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopmatch/service/ShopMatchTaskCacheService.java",
|
||
"line": 146,
|
||
"snippet": "Files.deleteIfExists(buildTaskEntityFile(taskId));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopmatch/service/ShopMatchTaskCacheService.java",
|
||
"line": 152,
|
||
"snippet": "Files.deleteIfExists(path);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopmatch/service/ShopMatchTaskCacheService.java",
|
||
"line": 163,
|
||
"snippet": "Files.deleteIfExists(buildTaskEntityFile(taskId));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopmatch/service/ShopMatchTaskCacheService.java",
|
||
"line": 216,
|
||
"snippet": "Files.deleteIfExists(file);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/shopmatch/service/ShopMatchTaskService.java",
|
||
"line": 790,
|
||
"snippet": "FileUtil.del(xlsx);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 788,
|
||
"snippet": "// that candidate; cleanup is only safe after a successful transaction"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 791,
|
||
"snippet": "cleanupPreparedSubmittedChunkIfUnreferenced(prepared);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 854,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(payload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 1161,
|
||
"snippet": "log.info(\"[similar-asin] duplicate chunk inserted concurrently taskId={} scope={} chunk={} cleanupLo"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 1190,
|
||
"snippet": "private void cleanupPreparedSubmittedChunkIfUnreferenced(PreparedSubmittedChunk prepared) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 1200,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(prepared.storedPayload());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 1202,
|
||
"snippet": "log.warn(\"[similar-asin] cleanup uncommitted chunk payload failed taskId={} chunk={} err={}\","
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 1703,
|
||
"snippet": "transientPayloadStorageService.deleteReplacedPayloadIfNeeded(oldPayload, storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 1706,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 3251,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(pointer);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 3283,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(pointer);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 3868,
|
||
"snippet": "public void cleanupResultFileJob(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 3896,
|
||
"snippet": "File outputDir = new File(storageProperties.getLocalTempDir(), \"similar-asin-result\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 4076,
|
||
"snippet": "File outputDir = new File(storageProperties.getLocalTempDir(), \"similar-asin-result\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 4544,
|
||
"snippet": "Path spoolDir = Files.createTempDirectory(xlsx.getParentFile().toPath(), \"similar-asin-images-\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
|
||
"line": 5409,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(storedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/ExcelCellImageWriter.java",
|
||
"line": 154,
|
||
"snippet": "Files.deleteIfExists(tmp);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/SimilarAsinImageEmbedder.java",
|
||
"line": 681,
|
||
"snippet": "Files.deleteIfExists(path);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/SimilarAsinImageEmbedder.java",
|
||
"line": 686,
|
||
"snippet": "Files.deleteIfExists(path);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/SimilarAsinImageEmbedder.java",
|
||
"line": 732,
|
||
"snippet": "Files.deleteIfExists(temp);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/SimilarAsinImageEmbedder.java",
|
||
"line": 734,
|
||
"snippet": "// Best-effort cleanup of a failed cache write."
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/SimilarAsinImageEmbedder.java",
|
||
"line": 1286,
|
||
"snippet": "Files.deleteIfExists(file);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/SimilarAsinImageEmbedder.java",
|
||
"line": 1306,
|
||
"snippet": "Files.deleteIfExists(path);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/WpsCellImageWriter.java",
|
||
"line": 165,
|
||
"snippet": "Files.deleteIfExists(tmp);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/split/service/SplitRunService.java",
|
||
"line": 213,
|
||
"snippet": "File outputDir = FileUtil.mkdir(FileUtil.file(storageProperties.getLocalTempDir(), \"split-result\"));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/split/service/SplitRunService.java",
|
||
"line": 362,
|
||
"snippet": "File baseDir = FileUtil.file(storageProperties.getLocalTempDir());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/split/service/SplitRunService.java",
|
||
"line": 395,
|
||
"snippet": "File outputDir = FileUtil.mkdir(FileUtil.file(storageProperties.getLocalTempDir(), \"split-result\"));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/AppearancePatentResultFileJobHandler.java",
|
||
"line": 9,
|
||
"snippet": "* cleanup 委托 cleanupResultFileJob;支持异步 offload;owner scoped。"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/AppearancePatentResultFileJobHandler.java",
|
||
"line": 30,
|
||
"snippet": "public void cleanup(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/AppearancePatentResultFileJobHandler.java",
|
||
"line": 31,
|
||
"snippet": "appearancePatentTaskService.cleanupResultFileJob(job);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/BrandResultFileJobHandler.java",
|
||
"line": 10,
|
||
"snippet": "* cleanup 为空(原 cleanupAfterSuccess 无 BRAND 分支)。"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/CollectDataResultFileJobHandler.java",
|
||
"line": 8,
|
||
"snippet": "* cleanup 为空(原 cleanupAfterSuccess 无 COLLECT_DATA 分支)。"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/DeleteBrandResultFileJobHandler.java",
|
||
"line": 29,
|
||
"snippet": "public void cleanup(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/DeleteBrandResultFileJobHandler.java",
|
||
"line": 30,
|
||
"snippet": "deleteBrandRunService.cleanupResultFileJob(job);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 41,
|
||
"snippet": "public class ModuleHistoryCleanupService {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 44,
|
||
"snippet": "private static final Duration CLEANUP_LOCK_TTL = Duration.ofHours(2);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 49,
|
||
"snippet": "private final ModuleCleanupProperties moduleCleanupProperties;"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 67,
|
||
"snippet": "@Value(\"${aiimage.module-cleanup.max-collect-payloads:10000}\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 70,
|
||
"snippet": "public ModuleHistoryCleanupService(ModuleCleanupProperties moduleCleanupProperties,"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 83,
|
||
"snippet": "this.moduleCleanupProperties = moduleCleanupProperties;"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 102,
|
||
"snippet": "@Scheduled(cron = \"${aiimage.module-cleanup.cron:0 0 0 * * *}\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 103,
|
||
"snippet": "public void cleanupConfiguredModules() {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 105,
|
||
"snippet": "distributedJobLockService.tryLock(\"module-history:cleanup\", CLEANUP_LOCK_TTL);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 107,
|
||
"snippet": "log.info(\"[module-cleanup] skip because another instance holds the distributed lock\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 111,
|
||
"snippet": "if (!moduleCleanupProperties.isEnabled()) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 114,
|
||
"snippet": "List<String> moduleTypes = moduleCleanupProperties.getModuleTypes();"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 118,
|
||
"snippet": "LocalDateTime cutoff = LocalDateTime.now().minusDays(Math.max(0, moduleCleanupProperties.getRetentio"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 119,
|
||
"snippet": "int batchSize = moduleCleanupProperties.getBatchSize();"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 169,
|
||
"snippet": "log.info(\"[module-cleanup] batch: taskIds={}, deletedRows={}, collectedPointers={}\","
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 177,
|
||
"snippet": "log.warn(\"[module-cleanup] keyset cursor did not advance, abort loop cursor={}\", cursor);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 182,
|
||
"snippet": "log.info(\"[module-cleanup] completed: moduleTypes={}, retentionDays={}, cutoff={}, batches={}, delet"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 183,
|
||
"snippet": "moduleTypes, moduleCleanupProperties.getRetentionDays(), cutoff,"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 191,
|
||
"snippet": "private int deleteRows(List<String> moduleTypes, List<Long> cleanupTaskIds, List<Long> collectDataTa"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 194,
|
||
"snippet": ".in(TaskFileJobEntity::getTaskId, cleanupTaskIds));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 198,
|
||
"snippet": ".in(TaskResultItemEntity::getTaskId, cleanupTaskIds));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 202,
|
||
"snippet": ".in(TaskProgressSnapshotEntity::getTaskId, cleanupTaskIds));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 206,
|
||
"snippet": ".in(TaskResultPayloadEntity::getTaskId, cleanupTaskIds));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 210,
|
||
"snippet": ".in(TaskScopeStateEntity::getTaskId, cleanupTaskIds));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 214,
|
||
"snippet": ".in(TaskChunkEntity::getTaskId, cleanupTaskIds));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 223,
|
||
"snippet": ".in(FileResultEntity::getTaskId, cleanupTaskIds));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 226,
|
||
"snippet": ".in(FileTaskEntity::getId, cleanupTaskIds)"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 232,
|
||
"snippet": ".in(FileTaskEntity::getId, cleanupTaskIds));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 260,
|
||
"snippet": "private List<String> collectPayloadPointers(List<String> moduleTypes, List<Long> cleanupTaskIds, int"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 264,
|
||
"snippet": ".in(TaskChunkEntity::getTaskId, cleanupTaskIds));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 270,
|
||
"snippet": ".in(TaskScopeStateEntity::getTaskId, cleanupTaskIds));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ModuleHistoryCleanupService.java",
|
||
"line": 276,
|
||
"snippet": "log.warn(\"[module-cleanup] payload pointer collection truncated at max={}\", max);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/PatrolDeleteResultFileJobHandler.java",
|
||
"line": 32,
|
||
"snippet": "public void cleanup(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/PriceTrackResultFileJobHandler.java",
|
||
"line": 32,
|
||
"snippet": "public void cleanup(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ProductRiskResultFileJobHandler.java",
|
||
"line": 32,
|
||
"snippet": "public void cleanup(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/PublishResultFileJobHandler.java",
|
||
"line": 8,
|
||
"snippet": "* cleanup 委托 PublishTaskService.cleanupResultFileJob(不走 payload.deleteLatest);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/PublishResultFileJobHandler.java",
|
||
"line": 31,
|
||
"snippet": "public void cleanup(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/PublishResultFileJobHandler.java",
|
||
"line": 32,
|
||
"snippet": "publishTaskService.cleanupResultFileJob(job);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/QueryAsinResultFileJobHandler.java",
|
||
"line": 32,
|
||
"snippet": "public void cleanup(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ResultFileJobHandler.java",
|
||
"line": 10,
|
||
"snippet": "* cleanup 在 Job 成功后调用(原 cleanupAfterSuccess 分支);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ResultFileJobHandler.java",
|
||
"line": 24,
|
||
"snippet": "default void cleanup(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ShopDataCrawlResultFileJobHandler.java",
|
||
"line": 8,
|
||
"snippet": "* cleanup 两处:payload.deleteLatest + 服务内 cleanupResultFileJob(原分支语义);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ShopDataCrawlResultFileJobHandler.java",
|
||
"line": 34,
|
||
"snippet": "public void cleanup(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ShopDataCrawlResultFileJobHandler.java",
|
||
"line": 36,
|
||
"snippet": "shopDataCrawlTaskService.cleanupResultFileJob(job);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ShopMatchResultFileJobHandler.java",
|
||
"line": 9,
|
||
"snippet": "* cleanup 删除该任务最新 payload(原 cleanupAfterSuccess 分支语义)。"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ShopMatchResultFileJobHandler.java",
|
||
"line": 34,
|
||
"snippet": "public void cleanup(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/SimilarAsinResultFileJobHandler.java",
|
||
"line": 30,
|
||
"snippet": "public void cleanup(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/SimilarAsinResultFileJobHandler.java",
|
||
"line": 31,
|
||
"snippet": "similarAsinTaskService.cleanupResultFileJob(job);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 17,
|
||
"snippet": "public class TaskImageCacheCleanupService {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 19,
|
||
"snippet": "private static final Duration CLEANUP_LOCK_TTL = Duration.ofMinutes(30);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 22,
|
||
"snippet": "private final TaskImageCacheCleanupProperties cleanupProperties;"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 25,
|
||
"snippet": "@Scheduled(cron = \"${aiimage.task-image-cache-cleanup.cron:0 30 2 * * *}\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 26,
|
||
"snippet": "public void cleanupExpiredImageCache() {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 27,
|
||
"snippet": "if (!cleanupProperties.isEnabled()) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 31,
|
||
"snippet": "distributedJobLockService.tryLock(\"task-image-cache:cleanup\", CLEANUP_LOCK_TTL);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 33,
|
||
"snippet": "log.info(\"[task-image-cache-cleanup] skip because another instance holds the distributed lock\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 37,
|
||
"snippet": "int retentionDays = Math.max(1, cleanupProperties.getRetentionDays());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 38,
|
||
"snippet": "int batchSize = Math.max(1, cleanupProperties.getBatchSize());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 39,
|
||
"snippet": "int maxBatches = Math.max(1, cleanupProperties.getMaxBatchesPerRun());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 51,
|
||
"snippet": "if (!lockHandle.renew(CLEANUP_LOCK_TTL)) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 52,
|
||
"snippet": "log.warn(\"[task-image-cache-cleanup] stop because lock renew failed deletedTotal={} batches={}\","
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 61,
|
||
"snippet": "long maxBytes = cleanupProperties.getMaxBytes();"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 62,
|
||
"snippet": "long targetBytes = cleanupProperties.getTargetBytes();"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 81,
|
||
"snippet": "if (!lockHandle.renew(CLEANUP_LOCK_TTL)) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 82,
|
||
"snippet": "log.warn(\"[task-image-cache-cleanup] stop capacity cleanup because lock renew failed deletedTotal={}"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 94,
|
||
"snippet": "log.info(\"[task-image-cache-cleanup] finished cutoff={} retentionDays={} expiredDeleted={} expiredBa"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskImageCacheCleanupService.java",
|
||
"line": 99,
|
||
"snippet": "log.warn(\"[task-image-cache-cleanup] failed msg={}\", ex.getMessage(), ex);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultFileJobWorker.java",
|
||
"line": 225,
|
||
"snippet": "cleanupAfterSuccess(job);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultFileJobWorker.java",
|
||
"line": 351,
|
||
"snippet": "private void cleanupAfterSuccess(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultFileJobWorker.java",
|
||
"line": 354,
|
||
"snippet": "handler.cleanup(job);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultItemService.java",
|
||
"line": 109,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(row.getPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultItemService.java",
|
||
"line": 140,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(row.getPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultItemService.java",
|
||
"line": 206,
|
||
"snippet": "transientPayloadStorageService.deleteReplacedPayloadIfNeeded(storedPayload, existing.getPayloadJson("
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultItemService.java",
|
||
"line": 209,
|
||
"snippet": "transientPayloadStorageService.deleteReplacedPayloadIfNeeded(existing.getPayloadJson(), storedPayloa"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultPayloadService.java",
|
||
"line": 64,
|
||
"snippet": "transientPayloadStorageService.deleteReplacedPayloadIfNeeded(existing.getPayloadJson(), storedPayloa"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultPayloadService.java",
|
||
"line": 99,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(existing.getPayloadJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadBufferMaintenanceService.java",
|
||
"line": 27,
|
||
"snippet": "private static final Duration CLEANUP_LOCK_TTL = Duration.ofMinutes(10);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadBufferMaintenanceService.java",
|
||
"line": 57,
|
||
"snippet": "Files.deleteIfExists(file);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadBufferMaintenanceService.java",
|
||
"line": 73,
|
||
"snippet": "@Scheduled(cron = \"${aiimage.task-pressure.scope-payload-cleanup-cron:15 */30 * * * *}\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadBufferMaintenanceService.java",
|
||
"line": 74,
|
||
"snippet": "public void cleanupExpiredBufferedPayloads() {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadBufferMaintenanceService.java",
|
||
"line": 76,
|
||
"snippet": "distributedJobLockService.tryLock(\"task-scope-buffer:cleanup\", CLEANUP_LOCK_TTL);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadBufferMaintenanceService.java",
|
||
"line": 78,
|
||
"snippet": "log.info(\"[task-scope-buffer] skip cleanup because another instance holds the lock\");"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadBufferMaintenanceService.java",
|
||
"line": 94,
|
||
"snippet": "Files.deleteIfExists(file);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadBufferMaintenanceService.java",
|
||
"line": 98,
|
||
"snippet": "log.warn(\"[task-scope-buffer] cleanup failed path={} msg={}\", file, ex.getMessage());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadBufferMaintenanceService.java",
|
||
"line": 102,
|
||
"snippet": "log.info(\"[task-scope-buffer] cleanup finished deleted={} root={}\", deleted, root);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadBufferMaintenanceService.java",
|
||
"line": 163,
|
||
"snippet": "Files.deleteIfExists(current);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadStorageService.java",
|
||
"line": 54,
|
||
"snippet": "transientPayloadStorageService.deleteReplacedPayloadIfNeeded(replacedPayload, stateJson);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadStorageService.java",
|
||
"line": 67,
|
||
"snippet": "log.warn(\"[task-scope-payload] skip failed-save cleanup because reference check failed taskId={} mod"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadStorageService.java",
|
||
"line": 71,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(uploadedPayload);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadStorageService.java",
|
||
"line": 84,
|
||
"snippet": "log.warn(\"[task-scope-payload] skip failed-save cleanup because current state pointer is unreadable "
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadStorageService.java",
|
||
"line": 184,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(state.getStateJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadStorageService.java",
|
||
"line": 233,
|
||
"snippet": "transientPayloadStorageService.deletePayloadIfPresent(state.getStateJson());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskScopePayloadStorageService.java",
|
||
"line": 294,
|
||
"snippet": "transientPayloadStorageService.deleteReplacedPayloadIfNeeded(state.getParsedPayloadJson(), storedPar"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TransientPayloadStorageService.java",
|
||
"line": 86,
|
||
"snippet": "&& (rustfsObjectStorageService.isConfigured() || storageProperties.getLocalTempDir() != null);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TransientPayloadStorageService.java",
|
||
"line": 165,
|
||
"snippet": "public void deletePayloadIfPresent(String value) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TransientPayloadStorageService.java",
|
||
"line": 203,
|
||
"snippet": "* 老路径 caller 把自己那行覆盖/删除后立即调用 {@link #deletePayloadIfPresent},"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TransientPayloadStorageService.java",
|
||
"line": 265,
|
||
"snippet": "deletePayloadIfPresent(oldPointer);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TransientPayloadStorageService.java",
|
||
"line": 526,
|
||
"snippet": "Files.deleteIfExists(resolveLocalPayloadPath(objectKey));"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TransientPayloadStorageService.java",
|
||
"line": 542,
|
||
"snippet": "String configuredRoot = storageProperties.getLocalTempDir();"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/WithdrawResultFileJobHandler.java",
|
||
"line": 9,
|
||
"snippet": "* cleanup 走 payload.deleteLatest。"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/service/WithdrawResultFileJobHandler.java",
|
||
"line": 42,
|
||
"snippet": "public void cleanup(TaskFileJobEntity job) {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/util/TaskEntityLocalCache.java",
|
||
"line": 88,
|
||
"snippet": "@Scheduled(fixedDelayString = \"${aiimage.task-pressure.local-task-entity-cache-cleanup-delay-ms:6000"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/task/util/TaskEntityLocalCache.java",
|
||
"line": 89,
|
||
"snippet": "public void cleanup() {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/withdraw/service/WithdrawTaskService.java",
|
||
"line": 432,
|
||
"snippet": "FileUtil.del(xlsx);"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/ziniao/memory/service/ZiniaoTransientCacheService.java",
|
||
"line": 92,
|
||
"snippet": "cleanupExpiredEntries(LocalDateTime.now());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/ziniao/memory/service/ZiniaoTransientCacheService.java",
|
||
"line": 121,
|
||
"snippet": "@Scheduled(fixedDelayString = \"${aiimage.ziniao.transient-cache-cleanup-delay-ms:60000}\")"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/ziniao/memory/service/ZiniaoTransientCacheService.java",
|
||
"line": 122,
|
||
"snippet": "void cleanupExpiredEntriesScheduled() {"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/ziniao/memory/service/ZiniaoTransientCacheService.java",
|
||
"line": 123,
|
||
"snippet": "cleanupExpiredEntries(LocalDateTime.now());"
|
||
},
|
||
{
|
||
"file": "src/main/java/com/nanri/aiimage/modules/ziniao/memory/service/ZiniaoTransientCacheService.java",
|
||
"line": 127,
|
||
"snippet": "private void cleanupExpiredEntries(LocalDateTime now) {"
|
||
}
|
||
]
|
||
} |