feat(3.2.0): 放开最大重试次数到9999999

This commit is contained in:
byteblogs168 2024-04-07 08:58:48 +08:00
parent 0d39c138c9
commit 75dfa6fa87
5 changed files with 9 additions and 60 deletions

View File

@ -35,7 +35,7 @@ services:
environment:
POSTGRES_USER: root
POSTGRES_PASSWORD: root
POSTGRES_DB: postgres
POSTGRES_DB: easy_retry
ports:
- "5432:5432"
volumes:
@ -83,4 +83,4 @@ services:
volumes:
- mariadb:/var/lib/mysql/
# 注入初始化脚本, mysql
- ../sql/easy_retry_mysql.sql:/docker-entrypoint-initdb.d/init.sql:ro
- ../sql/easy_retry_mysql.sql:/docker-entrypoint-initdb.d/init.sql:ro

View File

@ -67,34 +67,15 @@ public class ExecCallbackUnitActor extends AbstractActor {
if (Objects.nonNull(serverNode)) {
retryExecutor.call((Callable<Result<Void>>) () -> {
Result<Void> result = callClient(retryTask, serverNode, sceneConfig);
String message = "回调客户端成功";
if (StatusEnum.YES.getStatus() != result.getStatus()) {
if (StrUtil.isNotBlank(result.getMessage())) {
message = result.getMessage();
} else {
message = "回调客户端失败: 异常信息为空";
}
}
// retryTaskLog.setMessage(message);
return result;
});
if (context.hasException()) {
// retryTaskLog.setMessage(context.getException().getMessage());
}
} else {
// retryTaskLog.setMessage("There are currently no available client PODs.");
}
} catch (Exception e) {
RetryLogMetaDTO retryLogMetaDTO = RetryTaskConverter.INSTANCE.toLogMetaDTO(retryTask);
retryLogMetaDTO.setTimestamp(DateUtils.toNowMilli());
EasyRetryLog.REMOTE.error("请求客户端异常. <|>{}<|>", retryTask.getUniqueId(), retryLogMetaDTO, e);// retryTaskLog.setMessage(StringUtils.isBlank(e.getMessage()) ? StrUtil.EMPTY : e.getMessage());
EasyRetryLog.REMOTE.error("请求客户端异常. <|>{}<|>", retryTask.getUniqueId(), retryLogMetaDTO, e);
} finally {
// ActorRef actorRef = ActorGenerator.logActor();
// actorRef.tell(retryTaskLog, actorRef);
getContext().stop(getSelf());
}

View File

@ -50,10 +50,6 @@ public class ExecUnitActor extends AbstractActor {
RegisterNodeInfo serverNode = context.getServerNode();
SceneConfig sceneConfig = context.getSceneConfig();
// RetryTaskLogDTO retryTaskLog = RetryTaskLogConverter.INSTANCE.toRetryTaskLogDTO(retryTask);
// retryTaskLog.setTriggerTime(LocalDateTime.now());
// retryTaskLog.setClientInfo(ClientInfoUtils.generate(serverNode));
try {
if (Objects.nonNull(serverNode)) {
@ -61,42 +57,16 @@ public class ExecUnitActor extends AbstractActor {
retryExecutor.call((Callable<Result<DispatchRetryResultDTO>>) () -> {
Result<DispatchRetryResultDTO> result = callClient(retryTask, serverNode, sceneConfig);
// 回调接口请求成功处理返回值
if (StatusEnum.YES.getStatus() != result.getStatus()) {
if (StrUtil.isNotBlank(result.getMessage())) {
// retryTaskLog.setMessage(result.getMessage());
} else {
// retryTaskLog.setMessage("客户端执行失败: 异常信息为空");
}
} else {
DispatchRetryResultDTO data = JsonUtil.parseObject(JsonUtil.toJsonString(result.getData()), DispatchRetryResultDTO.class);
result.setData(data);
if (Objects.nonNull(data)) {
if (RetryResultStatusEnum.FAILURE.getStatus().equals(data.getStatusCode())) {
if (StrUtil.isNotBlank(data.getExceptionMsg())) {
// retryTaskLog.setMessage(data.getExceptionMsg());
} else {
// retryTaskLog.setMessage("客户端重试失败: 异常信息为空");
}
} else if (RetryResultStatusEnum.STOP.getStatus().equals(data.getStatusCode())) {
// retryTaskLog.setMessage("客户端主动停止任务");
} else {
// retryTaskLog.setMessage("客户端执行成功");
}
}
}
return result;
});
// 请求发生异常
if (context.hasException()) {
// retryTaskLog.setMessage(context.getException().getMessage());
}
} else {
// retryTaskLog.setMessage("There are currently no available client PODs.");
}
} catch (Exception e) {
@ -104,9 +74,6 @@ public class ExecUnitActor extends AbstractActor {
retryLogMetaDTO.setTimestamp(DateUtils.toNowMilli());
EasyRetryLog.REMOTE.error("请求客户端异常. <|>{}<|>", retryTask.getUniqueId(), retryLogMetaDTO, e);
} finally {
// ActorRef actorRef = ActorGenerator.logActor();
// actorRef.tell(retryTaskLog, actorRef);
getContext().stop(getSelf());
}

View File

@ -2,6 +2,7 @@ server:
port: 8080
servlet:
context-path: /easy-retry
spring:
profiles:
active: dev
@ -14,7 +15,7 @@ spring:
password: root
## postgres
# driver-class-name: org.postgresql.Driver
# url: jdbc:postgresql://localhost:5432/postgres?useUnicode=true&characterEncoding=utf8&useSSL=true&autoReconnect=true&reWriteBatchedInserts=true
# url: jdbc:postgresql://localhost:5432/easy_retry?useUnicode=true&characterEncoding=utf8&useSSL=true&autoReconnect=true&reWriteBatchedInserts=true
# username: root
# password: root
## Oracle
@ -22,7 +23,7 @@ spring:
# url: jdbc:oracle:thin:@//localhost:1521/XEPDB1
# username: easy_retry
# password: EasyRetry
## SQL Server
## SQL Server 注意:由于system_user为SQLServer系统函数因此SQLServer需要启用前缀配置请配置mybatis-plus.global-config.db-config.table-prefix: er_
# driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
# url: jdbc:sqlserver://localhost:1433;DatabaseName=easy_retry;SelectMethod=cursor;encrypt=false;rewriteBatchedStatements=true
# username: SA
@ -53,10 +54,11 @@ mybatis-plus:
capital-mode: false
logic-delete-value: 1
logic-not-delete-value: 0
# table-prefix: er_
# table-prefix: er_ # SQLServer 请打开该配置
configuration:
map-underscore-to-camel-case: true
cache-enabled: true
logging:
config: classpath:logback-boot.xml
# level:
@ -74,6 +76,5 @@ easy-retry:
callback: # 回调配置
max-count: 288 #回调最大执行次数
trigger-interval: 900 #间隔时间
db-type: mysql #当前使用的数据库
mode: all
retry-max-pull-count: 10

View File

@ -24,7 +24,7 @@ public class SceneConfigRequestVO {
@NotNull(message = "场景状态不能为空")
private Integer sceneStatus;
@Max(message = "最大重试次数", value = 99)
@Max(message = "最大重试次数", value = 9999999)
@Min(message = "最小重试次数", value = 0)
private Integer maxRetryCount;