Files
crawler-plugin/backend-java/scripts/hc_report.json
T

1266 lines
50 KiB
JSON

{
"timeout_configs": [
{
"config_class": "AppearancePatentProperties",
"field": "llmConnectTimeoutMillis",
"default": "10000",
"source": "src/main/java/com/nanri/aiimage/config/AppearancePatentProperties.java"
},
{
"config_class": "AppearancePatentProperties",
"field": "llmReadTimeoutMillis",
"default": "180000",
"source": "src/main/java/com/nanri/aiimage/config/AppearancePatentProperties.java"
},
{
"config_class": "AppearancePatentProperties",
"field": "llmRetryTimes",
"default": "3",
"source": "src/main/java/com/nanri/aiimage/config/AppearancePatentProperties.java"
},
{
"config_class": "AppearancePatentProperties",
"field": "staleTimeoutMinutes",
"default": "30",
"source": "src/main/java/com/nanri/aiimage/config/AppearancePatentProperties.java"
},
{
"config_class": "BrandCheckProperties",
"field": "connectTimeoutMillis",
"default": "10000",
"source": "src/main/java/com/nanri/aiimage/config/BrandCheckProperties.java"
},
{
"config_class": "BrandCheckProperties",
"field": "readTimeoutMillis",
"default": "60000",
"source": "src/main/java/com/nanri/aiimage/config/BrandCheckProperties.java"
},
{
"config_class": "BrandProgressProperties",
"field": "heartbeatTimeoutMinutes",
"default": "15",
"source": "src/main/java/com/nanri/aiimage/config/BrandProgressProperties.java"
},
{
"config_class": "DeleteBrandProgressProperties",
"field": "heartbeatTimeoutMinutes",
"default": "15",
"source": "src/main/java/com/nanri/aiimage/config/DeleteBrandProgressProperties.java"
},
{
"config_class": "DeleteBrandProgressProperties",
"field": "productRiskStaleTimeoutMinutes",
"default": "30",
"source": "src/main/java/com/nanri/aiimage/config/DeleteBrandProgressProperties.java"
},
{
"config_class": "DeleteBrandProgressProperties",
"field": "priceTrackStaleTimeoutMinutes",
"default": "30",
"source": "src/main/java/com/nanri/aiimage/config/DeleteBrandProgressProperties.java"
},
{
"config_class": "DeleteBrandProgressProperties",
"field": "shopMatchStaleTimeoutMinutes",
"default": "30",
"source": "src/main/java/com/nanri/aiimage/config/DeleteBrandProgressProperties.java"
},
{
"config_class": "DeleteBrandProgressProperties",
"field": "patrolDeleteStaleTimeoutMinutes",
"default": "30",
"source": "src/main/java/com/nanri/aiimage/config/DeleteBrandProgressProperties.java"
},
{
"config_class": "DeleteBrandProgressProperties",
"field": "queryAsinStaleTimeoutMinutes",
"default": "30",
"source": "src/main/java/com/nanri/aiimage/config/DeleteBrandProgressProperties.java"
},
{
"config_class": "DeleteBrandProgressProperties",
"field": "withdrawStaleTimeoutMinutes",
"default": "30",
"source": "src/main/java/com/nanri/aiimage/config/DeleteBrandProgressProperties.java"
},
{
"config_class": "ImageVideoProperties",
"field": "cozeConnectTimeoutMillis",
"default": "10000",
"source": "src/main/java/com/nanri/aiimage/config/ImageVideoProperties.java"
},
{
"config_class": "ImageVideoProperties",
"field": "cozeReadTimeoutMillis",
"default": "3600000",
"source": "src/main/java/com/nanri/aiimage/config/ImageVideoProperties.java"
},
{
"config_class": "ImageVideoProperties",
"field": "archiveConnectTimeoutMillis",
"default": "10000",
"source": "src/main/java/com/nanri/aiimage/config/ImageVideoProperties.java"
},
{
"config_class": "ImageVideoProperties",
"field": "archiveReadTimeoutMillis",
"default": "600000",
"source": "src/main/java/com/nanri/aiimage/config/ImageVideoProperties.java"
},
{
"config_class": "InstanceRoutingProperties",
"field": "connectTimeoutMillis",
"default": "3000",
"source": "src/main/java/com/nanri/aiimage/config/InstanceRoutingProperties.java"
},
{
"config_class": "InstanceRoutingProperties",
"field": "readTimeoutMillis",
"default": "300000",
"source": "src/main/java/com/nanri/aiimage/config/InstanceRoutingProperties.java"
},
{
"config_class": "SimilarAsinProperties",
"field": "staleTimeoutMinutes",
"default": "30",
"source": "src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java"
},
{
"config_class": "SimilarAsinProperties",
"field": "imageDownloadTimeoutSeconds",
"default": "5",
"source": "src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java"
},
{
"config_class": "SimilarAsinProperties",
"field": "imagePrefetchTimeoutSeconds",
"default": "1800",
"source": "src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java"
},
{
"config_class": "SimilarAsinProperties",
"field": "resultFileTimeoutMinutes",
"default": "90",
"source": "src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java"
},
{
"config_class": "SimilarAsinProperties",
"field": "llmConnectTimeoutMillis",
"default": "10000",
"source": "src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java"
},
{
"config_class": "SimilarAsinProperties",
"field": "llmReadTimeoutMillis",
"default": "180000",
"source": "src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java"
},
{
"config_class": "SimilarAsinProperties",
"field": "llmRetryTimes",
"default": "3",
"source": "src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java"
},
{
"config_class": "SimilarAsinProperties",
"field": "llmImageDownloadTimeoutSeconds",
"default": "10",
"source": "src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "connectTimeoutSeconds",
"default": "10",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "readTimeoutSeconds",
"default": "60",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "writeTimeoutSeconds",
"default": "60",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "callTimeoutSeconds",
"default": "90",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "operationTimeoutSeconds",
"default": "120",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "uploadMaxRetries",
"default": "3",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "readMaxRetries",
"default": "3",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "deleteMaxRetries",
"default": "3",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "acquirePermitTimeoutMillis",
"default": "2000",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "baseRetryDelayMillis",
"default": "500",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "maxRetryDelayMillis",
"default": "5000",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "retryJitterMillis",
"default": "250",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "deleteRetryEnabled",
"default": "true",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "deleteRetryCron",
"default": "\"0 */5 * * * *\"",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "deleteRetryQueueCapacity",
"default": "10000",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "deleteRetryBatchSize",
"default": "200",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
},
{
"config_class": "TransientStorageProperties",
"field": "deleteRetryBatchTimeoutSeconds",
"default": "60",
"source": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java"
}
],
"client_sites": [
{
"file": "src/main/java/com/nanri/aiimage/common/service/TaskOwnerForwardService.java",
"line": 86,
"snippet": "requestFactory.setConnectTimeout(properties.getConnectTimeoutMillis());"
},
{
"file": "src/main/java/com/nanri/aiimage/common/service/TaskOwnerForwardService.java",
"line": 87,
"snippet": "requestFactory.setReadTimeout(properties.getReadTimeoutMillis());"
},
{
"file": "src/main/java/com/nanri/aiimage/config/AppearancePatentProperties.java",
"line": 23,
"snippet": "private int llmConnectTimeoutMillis = 10000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/AppearancePatentProperties.java",
"line": 24,
"snippet": "private int llmReadTimeoutMillis = 180000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/AppearancePatentProperties.java",
"line": 33,
"snippet": "private int llmRetryTimes = 3;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/BrandCheckProperties.java",
"line": 13,
"snippet": "private int connectTimeoutMillis = 10000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/BrandCheckProperties.java",
"line": 14,
"snippet": "private int readTimeoutMillis = 60000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/HttpClientPool.java",
"line": 28,
"snippet": "sharedHttpClient = HttpClient.newBuilder()"
},
{
"file": "src/main/java/com/nanri/aiimage/config/HttpClientPool.java",
"line": 29,
"snippet": ".connectTimeout(Duration.ofSeconds(10))"
},
{
"file": "src/main/java/com/nanri/aiimage/config/HttpClientPool.java",
"line": 37,
"snippet": "/** 按 readTimeout(毫秒)创建共享连接池工厂;非法值钳制到最小正数。 */"
},
{
"file": "src/main/java/com/nanri/aiimage/config/HttpClientPool.java",
"line": 38,
"snippet": "public static ClientHttpRequestFactory requestFactory(int readTimeoutMillis) {"
},
{
"file": "src/main/java/com/nanri/aiimage/config/HttpClientPool.java",
"line": 39,
"snippet": "int safeReadTimeout = Math.max(1, readTimeoutMillis);"
},
{
"file": "src/main/java/com/nanri/aiimage/config/HttpClientPool.java",
"line": 42,
"snippet": "factory.setReadTimeout(Duration.ofMillis(safeReadTimeout));"
},
{
"file": "src/main/java/com/nanri/aiimage/config/ImageVideoProperties.java",
"line": 19,
"snippet": "private int cozeConnectTimeoutMillis = 10000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/ImageVideoProperties.java",
"line": 20,
"snippet": "private int cozeReadTimeoutMillis = 3600000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/ImageVideoProperties.java",
"line": 23,
"snippet": "private int archiveConnectTimeoutMillis = 10000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/ImageVideoProperties.java",
"line": 24,
"snippet": "private int archiveReadTimeoutMillis = 600000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/InstanceRoutingProperties.java",
"line": 14,
"snippet": "private int connectTimeoutMillis = 3000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/InstanceRoutingProperties.java",
"line": 15,
"snippet": "private int readTimeoutMillis = 300000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java",
"line": 162,
"snippet": "private int llmConnectTimeoutMillis = 10000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java",
"line": 163,
"snippet": "private int llmReadTimeoutMillis = 180000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/SimilarAsinProperties.java",
"line": 164,
"snippet": "private int llmRetryTimes = 3;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java",
"line": 15,
"snippet": "private int connectTimeoutSeconds = 10;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java",
"line": 16,
"snippet": "private int readTimeoutSeconds = 60;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java",
"line": 17,
"snippet": "private int writeTimeoutSeconds = 60;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java",
"line": 18,
"snippet": "private int callTimeoutSeconds = 90;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java",
"line": 19,
"snippet": "private int operationTimeoutSeconds = 120;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java",
"line": 32,
"snippet": "private long baseRetryDelayMillis = 500;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java",
"line": 33,
"snippet": "private long maxRetryDelayMillis = 5000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java",
"line": 51,
"snippet": "private boolean deleteRetryEnabled = true;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java",
"line": 52,
"snippet": "private String deleteRetryCron = \"0 */5 * * * *\";"
},
{
"file": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java",
"line": 53,
"snippet": "private int deleteRetryQueueCapacity = 10000;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java",
"line": 54,
"snippet": "private int deleteRetryBatchSize = 200;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java",
"line": 55,
"snippet": "private int deleteRetryBatchTimeoutSeconds = 60;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/ZiniaoProperties.java",
"line": 29,
"snippet": "private int connectTimeoutSeconds;"
},
{
"file": "src/main/java/com/nanri/aiimage/config/ZiniaoProperties.java",
"line": 30,
"snippet": "private int readTimeoutSeconds;"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/client/AppearancePatentLlmClient.java",
"line": 264,
"snippet": "int attempts = Math.max(1, properties.getLlmRetryTimes());"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/client/AppearancePatentLlmClient.java",
"line": 276,
"snippet": "sleepBeforeRetry(attempt);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/client/AppearancePatentLlmClient.java",
"line": 728,
"snippet": ".requestFactory(HttpClientPool.requestFactory(properties.getLlmReadTimeoutMillis()));"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/client/AppearancePatentLlmClient.java",
"line": 816,
"snippet": "private void sleepBeforeRetry(int attemptIndex) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java",
"line": 1858,
"snippet": "loadPersistedResultRowsForRowsWithRetry(task.getId(), item.rows());"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java",
"line": 2103,
"snippet": "private Map<String, AppearancePatentResultRowDto> loadPersistedResultRowsForRowsWithRetry("
},
{
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java",
"line": 2112,
"snippet": "sleepBeforeResultRowsRetry(attempt);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/appearancepatent/service/AppearancePatentTaskService.java",
"line": 2218,
"snippet": "private void sleepBeforeResultRowsRetry(int attempt) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/brand/client/BrandCheckClient.java",
"line": 171,
"snippet": ".requestFactory(HttpClientPool.requestFactory(properties.getReadTimeoutMillis()));"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandRunService.java",
"line": 1641,
"snippet": "&& assembleJob.getRetryCount() != null"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/deletebrand/service/DeleteBrandRunService.java",
"line": 1642,
"snippet": "&& assembleJob.getRetryCount() >= TaskFileJobService.MAX_RETRY_COUNT;"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 22,
"snippet": "public class RustfsDeleteRetryService {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 26,
"snippet": "private final ConcurrentLinkedQueue<RetryItem> queue = new ConcurrentLinkedQueue<>();"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 27,
"snippet": "private final ConcurrentHashMap<String, RetryItem> pending = new ConcurrentHashMap<>();"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 31,
"snippet": "if (!properties.isDeleteRetryEnabled() || objectKey == null || objectKey.isBlank()) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 35,
"snippet": "RetryItem item = findOrAdmit(objectKey, cause);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 54,
"snippet": "if (!properties.isDeleteRetryEnabled()) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 57,
"snippet": "int batchSize = Math.max(1, properties.getDeleteRetryBatchSize());"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 59,
"snippet": "Math.max(1L, properties.getDeleteRetryBatchTimeoutSeconds()));"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 65,
"snippet": "List<RetryItem> retryNextInvocation = new ArrayList<>();"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 71,
"snippet": "RetryAttempt attempt = nextAttempt();"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 75,
"snippet": "RetryItem item = attempt.item;"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 88,
"snippet": "rustfsObjectStorageService.deleteObjectFromRetry(objectKey, remainingNanos);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 109,
"snippet": "private RetryItem findOrAdmit(String objectKey, Throwable cause) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 110,
"snippet": "RetryItem item = pending.get(objectKey);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 114,
"snippet": "int capacity = Math.max(1, properties.getDeleteRetryQueueCapacity());"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 125,
"snippet": "item = new RetryItem(objectKey);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 131,
"snippet": "private RetryAttempt nextAttempt() {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 133,
"snippet": "RetryItem item = queue.poll();"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 142,
"snippet": "return new RetryAttempt(item, item.generation);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 147,
"snippet": "private void removeIfUnchanged(RetryAttempt attempt) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 148,
"snippet": "RetryItem item = attempt.item;"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 159,
"snippet": "private int recordFailureIfUnchanged(RetryAttempt attempt, Exception ex) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 160,
"snippet": "RetryItem item = attempt.item;"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 172,
"snippet": "private void requeue(RetryItem item) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 180,
"snippet": "private void enqueueItemLocked(RetryItem item) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 187,
"snippet": "private record RetryAttempt(RetryItem item, long generation) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 190,
"snippet": "private static class RetryItem {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsDeleteRetryService.java",
"line": 198,
"snippet": "private RetryItem(String objectKey) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 42,
"snippet": "private final ObjectProvider<RustfsDeleteRetryService> deleteRetryServiceProvider;"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 61,
"snippet": "ObjectProvider<RustfsDeleteRetryService> deleteRetryServiceProvider) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 62,
"snippet": "this(properties, meterRegistryProvider, deleteRetryServiceProvider, null);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 67,
"snippet": "ObjectProvider<RustfsDeleteRetryService> deleteRetryServiceProvider,"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 71,
"snippet": "this.deleteRetryServiceProvider = deleteRetryServiceProvider;"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 111,
"snippet": "String uploadedObjectKey = executeWithRetry(OP_UPLOAD, objectKey, bytes.length,"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 132,
"snippet": "enqueueDeleteRetry(objectKey, ex);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 149,
"snippet": "return executeWithRetry(OP_READ, objectKey, 0, Math.max(1, properties.getReadMaxRetries()),"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 164,
"snippet": "void deleteObjectFromRetry(String objectKey) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 168,
"snippet": "void deleteObjectFromRetry(String objectKey, long timeoutNanos) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 172,
"snippet": "private void deleteObject(String objectKey, boolean enqueueRetryOnFailure, long deadlineNanos) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 177,
"snippet": "executeWithRetry(OP_DELETE, objectKey, 0, Math.max(1, properties.getDeleteMaxRetries()),"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 186,
"snippet": "if (enqueueRetryOnFailure && properties.isDeleteRetryEnabled()) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 187,
"snippet": "enqueueDeleteRetry(objectKey, ex);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 193,
"snippet": "private <T> T executeWithRetry(String operation,"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 239,
"snippet": "if (last instanceof OperationTimeoutException timeoutException) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 312,
"snippet": ".connectTimeout(Math.max(1, properties.getConnectTimeoutSeconds()), TimeUnit.SECONDS)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 313,
"snippet": ".readTimeout(Math.max(1, properties.getReadTimeoutSeconds()), TimeUnit.SECONDS)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 314,
"snippet": ".writeTimeout(Math.max(1, properties.getWriteTimeoutSeconds()), TimeUnit.SECONDS)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 315,
"snippet": ".callTimeout(Math.max(1, properties.getCallTimeoutSeconds()), TimeUnit.SECONDS)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 332,
"snippet": "long configuredTimeoutNanos = TimeUnit.SECONDS.toNanos(Math.max(1, properties.getCallTimeoutSeconds()));"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 333,
"snippet": "long callTimeoutMillis = TimeUnit.NANOSECONDS.toMillis("
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 335,
"snippet": "if (callTimeoutMillis <= 0L) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 336,
"snippet": "throw new OperationTimeoutException(\"rustfs operation timeout before HTTP call\");"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 339,
"snippet": ".callTimeout(callTimeoutMillis, TimeUnit.MILLISECONDS)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 358,
"snippet": "if (ex instanceof OperationTimeoutException timeoutException) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 425,
"snippet": "long baseDelay = Math.max(0L, properties.getBaseRetryDelayMillis());"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 426,
"snippet": "long maxDelay = Math.max(baseDelay, properties.getMaxRetryDelayMillis());"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 428,
"snippet": "long jitter = Math.max(0L, properties.getRetryJitterMillis());"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 455,
"snippet": "long timeoutSeconds = properties.getOperationTimeoutSeconds();"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 472,
"snippet": "throw new OperationTimeoutException("
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 485,
"snippet": "private void enqueueDeleteRetry(String objectKey, RuntimeException failure) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 486,
"snippet": "if (!properties.isDeleteRetryEnabled() || deleteRetryServiceProvider == null) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 489,
"snippet": "RustfsDeleteRetryService retryService = deleteRetryServiceProvider.getIfAvailable();"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 555,
"snippet": "private static class OperationTimeoutException extends IllegalStateException {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/file/service/object/RustfsObjectStorageService.java",
"line": 556,
"snippet": "private OperationTimeoutException(String message) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoArchiveService.java",
"line": 225,
"snippet": "connection.setConnectTimeout(Math.max(1000, properties.getArchiveConnectTimeoutMillis()));"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoArchiveService.java",
"line": 226,
"snippet": "connection.setReadTimeout(Math.max(1000, properties.getArchiveReadTimeoutMillis()));"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoCozeService.java",
"line": 590,
"snippet": ".timeout(Duration.ofMillis(Math.max(1000, properties.getCozeReadTimeoutMillis())))"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoCozeService.java",
"line": 620,
"snippet": ".timeout(Duration.ofMillis(Math.max(1000, properties.getCozeReadTimeoutMillis())))"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoCozeService.java",
"line": 682,
"snippet": "sharedHttpClient = HttpClient.newBuilder()"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/imagevideo/service/ImageVideoCozeService.java",
"line": 683,
"snippet": ".connectTimeout(Duration.ofMillis(Math.max(1000, properties.getCozeConnectTimeoutMillis())))"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/publish/model/vo/PublishResultVo.java",
"line": 22,
"snippet": "private Integer fileJobRetryCount;"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
"line": 1010,
"snippet": "response.setFileJobRetryCount(job.getRetryCount());"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/publish/service/PublishTaskService.java",
"line": 1690,
"snippet": "int retryCount = latest == null ? safeInt(job.getRetryCount()) : safeInt(latest.getRetryCount());"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/client/SimilarAsinLlmClient.java",
"line": 65,
"snippet": "int attempts = Math.max(1, properties.getLlmRetryTimes());"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/client/SimilarAsinLlmClient.java",
"line": 77,
"snippet": "sleepBeforeRetry(attempt);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/client/SimilarAsinLlmClient.java",
"line": 281,
"snippet": ".requestFactory(HttpClientPool.requestFactory(properties.getLlmReadTimeoutMillis()));"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/client/SimilarAsinLlmClient.java",
"line": 291,
"snippet": "private void sleepBeforeRetry(int attemptIndex) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinLlmService.java",
"line": 558,
"snippet": "downloadHttpClient = HttpClient.newBuilder()"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinLlmService.java",
"line": 559,
"snippet": ".connectTimeout(Duration.ofSeconds(10))"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 470,
"snippet": "boolean categoryRetryRequired = false;"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 491,
"snippet": "categoryRetryRequired |= parsed.categoryRetryRequired();"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 501,
"snippet": "request.setCategorySwitch(requestedCategorySwitch || categoryRetryRequired);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 502,
"snippet": "if (!requestedCategorySwitch && categoryRetryRequired) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 2916,
"snippet": "if (taskFileJobService.isRetryExhausted(job.getId())) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 2942,
"snippet": "if (taskFileJobService.isRetryExhausted(job.getId())) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 2967,
"snippet": "} else if (taskFileJobService.isRetryExhausted(job.getId())) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 3500,
"snippet": "context.submitRetryCount(),"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 3925,
"snippet": "loadPersistedResultRowsForRowsWithRetry(task.getId(), captured.rows());"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 4044,
"snippet": "Map<String, SimilarAsinResultRowDto> resultMap = loadPersistedResultRowsWithRetry(task.getId(), parsedRows.siz"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 4324,
"snippet": "private Map<String, SimilarAsinResultRowDto> loadPersistedResultRowsForRowsWithRetry("
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 4333,
"snippet": "sleepBeforeResultRowsRetry(attempt);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 4507,
"snippet": "private Map<String, SimilarAsinResultRowDto> loadPersistedResultRowsWithRetry(Long taskId, int expectedParsedR"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 4513,
"snippet": "sleepBeforeResultRowsRetry(attempt);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 4526,
"snippet": "private void sleepBeforeResultRowsRetry(int attempt) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 4810,
"snippet": "boolean categoryRetryRequired = shouldEnableCategorySwitchForRetry("
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 4818,
"snippet": "return new ParsedWorkbook(total, dropped, headers, allRows, categoryRetryRequired);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 5597,
"snippet": "static boolean shouldEnableCategorySwitchForRetry(List<String> headers,"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 5788,
"snippet": "Integer submitRetryCount,"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/service/SimilarAsinTaskService.java",
"line": 5847,
"snippet": "boolean categoryRetryRequired) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/PuzzleImageMerger.java",
"line": 241,
"snippet": "sharedHttpClient = HttpClient.newBuilder()"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/PuzzleImageMerger.java",
"line": 242,
"snippet": ".connectTimeout(Duration.ofSeconds(10))"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/SimilarAsinImageEmbedder.java",
"line": 169,
"snippet": ".connectTimeout(Duration.ofSeconds(downloadTimeoutSeconds))"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/SimilarAsinImageEmbedder.java",
"line": 170,
"snippet": ".readTimeout(Duration.ofSeconds(downloadTimeoutSeconds))"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/SimilarAsinImageEmbedder.java",
"line": 171,
"snippet": ".writeTimeout(Duration.ofSeconds(downloadTimeoutSeconds))"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/SimilarAsinImageEmbedder.java",
"line": 172,
"snippet": ".callTimeout(Duration.ofSeconds(downloadTimeoutSeconds * 2L))"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/SimilarAsinImageEmbedder.java",
"line": 798,
"snippet": "logRetry(attemptUrl, attempt, ex);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/similarasin/util/SimilarAsinImageEmbedder.java",
"line": 878,
"snippet": "private void logRetry(String url, int attempt, Exception ex) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/ResultFileJobHandler.java",
"line": 11,
"snippet": "* onFailure 在重试耗尽时调用(原 notifyRetryExhausted 分支);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 47,
"snippet": "entity.setRetryCount(0);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 73,
"snippet": "int existingRetry = existing.getRetryCount() == null ? 0 : existing.getRetryCount();"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 74,
"snippet": "if (\"FAILED\".equals(existing.getStatus()) && existingRetry >= MAX_RETRY_COUNT) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 94,
"snippet": ".lt(TaskFileJobEntity::getRetryCount, MAX_RETRY_COUNT)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 120,
"snippet": ".lt(TaskFileJobEntity::getRetryCount, MAX_RETRY_COUNT)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 130,
"snippet": ".lt(TaskFileJobEntity::getRetryCount, MAX_RETRY_COUNT)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 178,
"snippet": ".lt(TaskFileJobEntity::getRetryCount, MAX_RETRY_COUNT)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 190,
"snippet": ".lt(TaskFileJobEntity::getRetryCount, MAX_RETRY_COUNT)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 226,
"snippet": ".set(TaskFileJobEntity::getRetryCount, 0)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 257,
"snippet": ".ne(TaskFileJobEntity::getRetryCount, MAX_RETRY_COUNT)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 264,
"snippet": ".ge(TaskFileJobEntity::getRetryCount, MAX_RETRY_COUNT)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 277,
"snippet": "&& job.getRetryCount() != null && job.getRetryCount() >= MAX_RETRY_COUNT) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 286,
"snippet": "int retryCount = job.getRetryCount() == null ? 0 : job.getRetryCount();"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 287,
"snippet": "int nextRetryCount = Math.min(MAX_RETRY_COUNT - 1, retryCount + 1);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 293,
"snippet": ".set(TaskFileJobEntity::getRetryCount, nextRetryCount)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 300,
"snippet": "int retryCount = job.getRetryCount() == null ? 0 : job.getRetryCount();"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 301,
"snippet": "int nextRetryCount = Math.min(MAX_RETRY_COUNT, retryCount + 1);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 308,
"snippet": ".set(TaskFileJobEntity::getRetryCount, nextRetryCount)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 310,
"snippet": "if (nextRetryCount >= MAX_RETRY_COUNT) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 372,
"snippet": ".and(wrapper -> wrapper.isNull(TaskFileJobEntity::getRetryCount)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 374,
"snippet": ".lt(TaskFileJobEntity::getRetryCount, MAX_RETRY_COUNT))"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 401,
"snippet": ".eq(claim.getRetryCount() != null, TaskFileJobEntity::getRetryCount, claim.getRetryCount())"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 402,
"snippet": ".isNull(claim.getRetryCount() == null, TaskFileJobEntity::getRetryCount)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 472,
"snippet": ".and(wrapper -> wrapper.isNull(TaskFileJobEntity::getRetryCount)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 474,
"snippet": ".lt(TaskFileJobEntity::getRetryCount, MAX_RETRY_COUNT))"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 511,
"snippet": "public boolean isRetryExhausted(Long jobId) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 515,
"snippet": "&& job.getRetryCount() != null"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 516,
"snippet": "&& job.getRetryCount() >= MAX_RETRY_COUNT;"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 526,
"snippet": "int currentRetryCount = current.getRetryCount() == null ? 0 : current.getRetryCount();"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 527,
"snippet": "int retryCount = Math.min(MAX_RETRY_COUNT, currentRetryCount + 1);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 531,
"snippet": ".eq(current.getRetryCount() != null, TaskFileJobEntity::getRetryCount, current.getRetryCount())"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 532,
"snippet": ".isNull(current.getRetryCount() == null, TaskFileJobEntity::getRetryCount)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 534,
"snippet": ".set(TaskFileJobEntity::getRetryCount, retryCount)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 551,
"snippet": ".ge(TaskFileJobEntity::getRetryCount, MAX_RETRY_COUNT)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 570,
"snippet": ".set(TaskFileJobEntity::getRetryCount, MAX_RETRY_COUNT)"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskFileJobService.java",
"line": 643,
"snippet": ".lt(TaskFileJobEntity::getRetryCount, MAX_RETRY_COUNT)));"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultFileJobWorker.java",
"line": 106,
"snippet": "finalizeRetryExhausted(job, message);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultFileJobWorker.java",
"line": 259,
"snippet": "if (taskFileJobService.isRetryExhausted(job.getId())) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultFileJobWorker.java",
"line": 260,
"snippet": "finalizeRetryExhausted(job, message);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultFileJobWorker.java",
"line": 265,
"snippet": "private void finalizeRetryExhausted(TaskFileJobEntity job, String message) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultFileJobWorker.java",
"line": 267,
"snippet": "notifyRetryExhausted(job, message);"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/task/service/TaskResultFileJobWorker.java",
"line": 279,
"snippet": "private void notifyRetryExhausted(TaskFileJobEntity job, String message) {"
},
{
"file": "src/main/java/com/nanri/aiimage/modules/ziniao/client/ZiniaoClientImpl.java",
"line": 275,
"snippet": ".requestFactory(HttpClientPool.requestFactory(ziniaoProperties.getReadTimeoutSeconds() * 1000));"
}
]
}