diff --git a/pom.xml b/pom.xml
index 9d2ec8d1a..e887efd5c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -31,7 +31,7 @@
3.44.0
2.2.7
4.3.1
- 1.3.0
+ 1.4.0-beta2
1.4.6
0.2.0
1.18.36
diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml
index 32a2cc4e3..caf5dba55 100644
--- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml
+++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-dev.yml
@@ -22,21 +22,10 @@ snail-job:
job-pull-page-size: 1000
# 服务器端口
server-port: 17888
- # 一个客户端每秒最多接收的重试数量指令
- limiter: 1000
# 号段模式下步长配置
step: 100
# 日志保存时间(单位: day)
log-storage: 90
- # 回调配置
- callback:
- #回调最大执行次数
- max-count: 288
- #间隔时间
- trigger-interval: 900
- # 重试每次拉取的次数
- retry-max-pull-count: 10
- # RPC通讯类型: netty,grpc
rpc-type: grpc
--- # 监控中心配置
diff --git a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml
index 32a2cc4e3..caf5dba55 100644
--- a/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml
+++ b/ruoyi-extend/ruoyi-snailjob-server/src/main/resources/application-prod.yml
@@ -22,21 +22,10 @@ snail-job:
job-pull-page-size: 1000
# 服务器端口
server-port: 17888
- # 一个客户端每秒最多接收的重试数量指令
- limiter: 1000
# 号段模式下步长配置
step: 100
# 日志保存时间(单位: day)
log-storage: 90
- # 回调配置
- callback:
- #回调最大执行次数
- max-count: 288
- #间隔时间
- trigger-interval: 900
- # 重试每次拉取的次数
- retry-max-pull-count: 10
- # RPC通讯类型: netty,grpc
rpc-type: grpc
--- # 监控中心配置
diff --git a/script/sql/oracle/oracle_ry_job.sql b/script/sql/oracle/oracle_ry_job.sql
index c2dbbfa52..104aabbaa 100644
--- a/script/sql/oracle/oracle_ry_job.sql
+++ b/script/sql/oracle/oracle_ry_job.sql
@@ -1,8 +1,9 @@
+
/*
SnailJob Database Transfer Tool
Source Server Type : MySQL
Target Server Type : Oracle
- Date: 2024-12-27 22:22:15
+ Date: 2025-02-25 22:16:28
*/
@@ -48,7 +49,6 @@ CREATE TABLE sj_group_config
group_partition number NOT NULL,
id_generator_mode smallint DEFAULT 1 NOT NULL,
init_scene smallint DEFAULT 0 NOT NULL,
- bucket_index number DEFAULT 0 NOT NULL,
create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL,
update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
);
@@ -68,13 +68,12 @@ COMMENT ON COLUMN sj_group_config.version IS '版本号';
COMMENT ON COLUMN sj_group_config.group_partition IS '分区';
COMMENT ON COLUMN sj_group_config.id_generator_mode IS '唯一id生成模式 默认号段模式';
COMMENT ON COLUMN sj_group_config.init_scene IS '是否初始化场景 0:否 1:是';
-COMMENT ON COLUMN sj_group_config.bucket_index IS 'bucket';
COMMENT ON COLUMN sj_group_config.create_dt IS '创建时间';
COMMENT ON COLUMN sj_group_config.update_dt IS '修改时间';
COMMENT ON TABLE sj_group_config IS '组配置';
-INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES ('dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, sysdate, sysdate);
-INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES ('prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, sysdate, sysdate);
+INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, create_dt, update_dt) VALUES ('dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, sysdate, sysdate);
+INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, create_dt, update_dt) VALUES ('prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, sysdate, sysdate);
-- sj_notify_config
CREATE TABLE sj_notify_config
@@ -144,12 +143,11 @@ COMMENT ON COLUMN sj_notify_recipient.create_dt IS '创建时间';
COMMENT ON COLUMN sj_notify_recipient.update_dt IS '修改时间';
COMMENT ON TABLE sj_notify_recipient IS '告警通知接收人';
--- sj_retry_dead_letter_0
-CREATE TABLE sj_retry_dead_letter_0
+-- sj_retry_dead_letter
+CREATE TABLE sj_retry_dead_letter
(
id number GENERATED ALWAYS AS IDENTITY,
namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
- unique_id varchar2(64) NULL,
group_name varchar2(64) NULL,
scene_name varchar2(64) NULL,
idempotent_id varchar2(64) NULL,
@@ -157,40 +155,34 @@ CREATE TABLE sj_retry_dead_letter_0
executor_name varchar2(512) DEFAULT '' NULL,
args_str clob NULL,
ext_attrs clob NULL,
- task_type smallint DEFAULT 1 NOT NULL,
create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
);
-ALTER TABLE sj_retry_dead_letter_0
- ADD CONSTRAINT pk_sj_retry_dead_letter_0 PRIMARY KEY (id);
+ALTER TABLE sj_retry_dead_letter
+ ADD CONSTRAINT pk_sj_retry_dead_letter PRIMARY KEY (id);
-CREATE UNIQUE INDEX uk_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, unique_id);
+CREATE INDEX idx_sj_retry_dead_letter_01 ON sj_retry_dead_letter (namespace_id, group_name, scene_name);
+CREATE INDEX idx_sj_retry_dead_letter_02 ON sj_retry_dead_letter (idempotent_id);
+CREATE INDEX idx_sj_retry_dead_letter_03 ON sj_retry_dead_letter (biz_no);
+CREATE INDEX idx_sj_retry_dead_letter_04 ON sj_retry_dead_letter (create_dt);
-CREATE INDEX idx_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, scene_name);
-CREATE INDEX idx_sj_retry_dead_letter_0_02 ON sj_retry_dead_letter_0 (idempotent_id);
-CREATE INDEX idx_sj_retry_dead_letter_0_03 ON sj_retry_dead_letter_0 (biz_no);
-CREATE INDEX idx_sj_retry_dead_letter_0_04 ON sj_retry_dead_letter_0 (create_dt);
+COMMENT ON COLUMN sj_retry_dead_letter.id IS '主键';
+COMMENT ON COLUMN sj_retry_dead_letter.namespace_id IS '命名空间id';
+COMMENT ON COLUMN sj_retry_dead_letter.group_name IS '组名称';
+COMMENT ON COLUMN sj_retry_dead_letter.scene_name IS '场景名称';
+COMMENT ON COLUMN sj_retry_dead_letter.idempotent_id IS '幂等id';
+COMMENT ON COLUMN sj_retry_dead_letter.biz_no IS '业务编号';
+COMMENT ON COLUMN sj_retry_dead_letter.executor_name IS '执行器名称';
+COMMENT ON COLUMN sj_retry_dead_letter.args_str IS '执行方法参数';
+COMMENT ON COLUMN sj_retry_dead_letter.ext_attrs IS '扩展字段';
+COMMENT ON COLUMN sj_retry_dead_letter.create_dt IS '创建时间';
+COMMENT ON TABLE sj_retry_dead_letter IS '死信队列表';
-COMMENT ON COLUMN sj_retry_dead_letter_0.id IS '主键';
-COMMENT ON COLUMN sj_retry_dead_letter_0.namespace_id IS '命名空间id';
-COMMENT ON COLUMN sj_retry_dead_letter_0.unique_id IS '同组下id唯一';
-COMMENT ON COLUMN sj_retry_dead_letter_0.group_name IS '组名称';
-COMMENT ON COLUMN sj_retry_dead_letter_0.scene_name IS '场景名称';
-COMMENT ON COLUMN sj_retry_dead_letter_0.idempotent_id IS '幂等id';
-COMMENT ON COLUMN sj_retry_dead_letter_0.biz_no IS '业务编号';
-COMMENT ON COLUMN sj_retry_dead_letter_0.executor_name IS '执行器名称';
-COMMENT ON COLUMN sj_retry_dead_letter_0.args_str IS '执行方法参数';
-COMMENT ON COLUMN sj_retry_dead_letter_0.ext_attrs IS '扩展字段';
-COMMENT ON COLUMN sj_retry_dead_letter_0.task_type IS '任务类型 1、重试数据 2、回调数据';
-COMMENT ON COLUMN sj_retry_dead_letter_0.create_dt IS '创建时间';
-COMMENT ON TABLE sj_retry_dead_letter_0 IS '死信队列表';
-
--- sj_retry_task_0
-CREATE TABLE sj_retry_task_0
+-- sj_retry
+CREATE TABLE sj_retry
(
id number GENERATED ALWAYS AS IDENTITY,
namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
- unique_id varchar2(64) NULL,
group_name varchar2(64) NULL,
scene_name varchar2(64) NULL,
idempotent_id varchar2(64) NULL,
@@ -198,112 +190,113 @@ CREATE TABLE sj_retry_task_0
executor_name varchar2(512) DEFAULT '' NULL,
args_str clob NULL,
ext_attrs clob NULL,
- next_trigger_at date NOT NULL,
+ next_trigger_at number NOT NULL,
retry_count number DEFAULT 0 NOT NULL,
retry_status smallint DEFAULT 0 NOT NULL,
task_type smallint DEFAULT 1 NOT NULL,
+ bucket_index number DEFAULT 0 NOT NULL,
+ parent_id number DEFAULT 0 NOT NULL,
+ deleted number DEFAULT 0 NOT NULL,
create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL,
update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
);
-ALTER TABLE sj_retry_task_0
- ADD CONSTRAINT pk_sj_retry_task_0 PRIMARY KEY (id);
+ALTER TABLE sj_retry
+ ADD CONSTRAINT pk_sj_retry PRIMARY KEY (id);
-CREATE UNIQUE INDEX uk_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, unique_id);
+CREATE UNIQUE INDEX uk_sj_retry_01 ON sj_retry (namespace_id, group_name, task_type, idempotent_id, deleted);
-CREATE INDEX idx_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, scene_name);
-CREATE INDEX idx_sj_retry_task_0_02 ON sj_retry_task_0 (namespace_id, group_name, task_type);
-CREATE INDEX idx_sj_retry_task_0_03 ON sj_retry_task_0 (namespace_id, group_name, retry_status);
-CREATE INDEX idx_sj_retry_task_0_04 ON sj_retry_task_0 (idempotent_id);
-CREATE INDEX idx_sj_retry_task_0_05 ON sj_retry_task_0 (biz_no);
-CREATE INDEX idx_sj_retry_task_0_06 ON sj_retry_task_0 (create_dt);
+CREATE INDEX idx_sj_retry_01 ON sj_retry (namespace_id, group_name, scene_name);
+CREATE INDEX idx_sj_retry_02 ON sj_retry (namespace_id, group_name, retry_status);
+CREATE INDEX idx_sj_retry_03 ON sj_retry (idempotent_id);
+CREATE INDEX idx_sj_retry_04 ON sj_retry (biz_no);
+CREATE INDEX idx_sj_retry_05 ON sj_retry (parent_id);
+CREATE INDEX idx_sj_retry_06 ON sj_retry (create_dt);
-COMMENT ON COLUMN sj_retry_task_0.id IS '主键';
-COMMENT ON COLUMN sj_retry_task_0.namespace_id IS '命名空间id';
-COMMENT ON COLUMN sj_retry_task_0.unique_id IS '同组下id唯一';
-COMMENT ON COLUMN sj_retry_task_0.group_name IS '组名称';
-COMMENT ON COLUMN sj_retry_task_0.scene_name IS '场景名称';
-COMMENT ON COLUMN sj_retry_task_0.idempotent_id IS '幂等id';
-COMMENT ON COLUMN sj_retry_task_0.biz_no IS '业务编号';
-COMMENT ON COLUMN sj_retry_task_0.executor_name IS '执行器名称';
-COMMENT ON COLUMN sj_retry_task_0.args_str IS '执行方法参数';
-COMMENT ON COLUMN sj_retry_task_0.ext_attrs IS '扩展字段';
-COMMENT ON COLUMN sj_retry_task_0.next_trigger_at IS '下次触发时间';
-COMMENT ON COLUMN sj_retry_task_0.retry_count IS '重试次数';
-COMMENT ON COLUMN sj_retry_task_0.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数';
-COMMENT ON COLUMN sj_retry_task_0.task_type IS '任务类型 1、重试数据 2、回调数据';
-COMMENT ON COLUMN sj_retry_task_0.create_dt IS '创建时间';
-COMMENT ON COLUMN sj_retry_task_0.update_dt IS '修改时间';
-COMMENT ON TABLE sj_retry_task_0 IS '任务表';
+COMMENT ON COLUMN sj_retry.id IS '主键';
+COMMENT ON COLUMN sj_retry.namespace_id IS '命名空间id';
+COMMENT ON COLUMN sj_retry.group_name IS '组名称';
+COMMENT ON COLUMN sj_retry.scene_name IS '场景名称';
+COMMENT ON COLUMN sj_retry.idempotent_id IS '幂等id';
+COMMENT ON COLUMN sj_retry.biz_no IS '业务编号';
+COMMENT ON COLUMN sj_retry.executor_name IS '执行器名称';
+COMMENT ON COLUMN sj_retry.args_str IS '执行方法参数';
+COMMENT ON COLUMN sj_retry.ext_attrs IS '扩展字段';
+COMMENT ON COLUMN sj_retry.next_trigger_at IS '下次触发时间';
+COMMENT ON COLUMN sj_retry.retry_count IS '重试次数';
+COMMENT ON COLUMN sj_retry.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数';
+COMMENT ON COLUMN sj_retry.task_type IS '任务类型 1、重试数据 2、回调数据';
+COMMENT ON COLUMN sj_retry.bucket_index IS 'bucket';
+COMMENT ON COLUMN sj_retry.parent_id IS '父节点id';
+COMMENT ON COLUMN sj_retry.deleted IS '逻辑删除';
+COMMENT ON COLUMN sj_retry.create_dt IS '创建时间';
+COMMENT ON COLUMN sj_retry.update_dt IS '修改时间';
+COMMENT ON TABLE sj_retry IS '重试信息表';
--- sj_retry_task_log
-CREATE TABLE sj_retry_task_log
+-- sj_retry_task
+CREATE TABLE sj_retry_task
(
- id number GENERATED ALWAYS AS IDENTITY,
- namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
- unique_id varchar2(64) NULL,
- group_name varchar2(64) NULL,
- scene_name varchar2(64) NULL,
- idempotent_id varchar2(64) NULL,
- biz_no varchar2(64) DEFAULT '' NULL,
- executor_name varchar2(512) DEFAULT '' NULL,
- args_str clob NULL,
- ext_attrs clob NULL,
- retry_status smallint DEFAULT 0 NOT NULL,
- task_type smallint DEFAULT 1 NOT NULL,
- create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL,
- update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
+ id number GENERATED ALWAYS AS IDENTITY,
+ namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
+ group_name varchar2(64) NULL,
+ scene_name varchar2(64) NULL,
+ retry_id number NOT NULL,
+ ext_attrs clob NULL,
+ task_status smallint DEFAULT 1 NOT NULL,
+ task_type smallint DEFAULT 1 NOT NULL,
+ operation_reason smallint DEFAULT 0 NOT NULL,
+ client_info varchar2(128) DEFAULT NULL NULL,
+ create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL,
+ update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
);
-ALTER TABLE sj_retry_task_log
- ADD CONSTRAINT pk_sj_retry_task_log PRIMARY KEY (id);
+ALTER TABLE sj_retry_task
+ ADD CONSTRAINT pk_sj_retry_task PRIMARY KEY (id);
-CREATE INDEX idx_sj_retry_task_log_01 ON sj_retry_task_log (namespace_id, group_name, scene_name);
-CREATE INDEX idx_sj_retry_task_log_02 ON sj_retry_task_log (retry_status);
-CREATE INDEX idx_sj_retry_task_log_03 ON sj_retry_task_log (idempotent_id);
-CREATE INDEX idx_sj_retry_task_log_04 ON sj_retry_task_log (unique_id);
-CREATE INDEX idx_sj_retry_task_log_05 ON sj_retry_task_log (biz_no);
-CREATE INDEX idx_sj_retry_task_log_06 ON sj_retry_task_log (create_dt);
+CREATE INDEX idx_sj_retry_task_01 ON sj_retry_task (namespace_id, group_name, scene_name);
+CREATE INDEX idx_sj_retry_task_02 ON sj_retry_task (task_status);
+CREATE INDEX idx_sj_retry_task_03 ON sj_retry_task (create_dt);
+CREATE INDEX idx_sj_retry_task_04 ON sj_retry_task (retry_id);
-COMMENT ON COLUMN sj_retry_task_log.id IS '主键';
-COMMENT ON COLUMN sj_retry_task_log.namespace_id IS '命名空间id';
-COMMENT ON COLUMN sj_retry_task_log.unique_id IS '同组下id唯一';
-COMMENT ON COLUMN sj_retry_task_log.group_name IS '组名称';
-COMMENT ON COLUMN sj_retry_task_log.scene_name IS '场景名称';
-COMMENT ON COLUMN sj_retry_task_log.idempotent_id IS '幂等id';
-COMMENT ON COLUMN sj_retry_task_log.biz_no IS '业务编号';
-COMMENT ON COLUMN sj_retry_task_log.executor_name IS '执行器名称';
-COMMENT ON COLUMN sj_retry_task_log.args_str IS '执行方法参数';
-COMMENT ON COLUMN sj_retry_task_log.ext_attrs IS '扩展字段';
-COMMENT ON COLUMN sj_retry_task_log.retry_status IS '重试状态 0、重试中 1、成功 2、最大次数';
-COMMENT ON COLUMN sj_retry_task_log.task_type IS '任务类型 1、重试数据 2、回调数据';
-COMMENT ON COLUMN sj_retry_task_log.create_dt IS '创建时间';
-COMMENT ON COLUMN sj_retry_task_log.update_dt IS '修改时间';
-COMMENT ON TABLE sj_retry_task_log IS '任务日志基础信息表';
+COMMENT ON COLUMN sj_retry_task.id IS '主键';
+COMMENT ON COLUMN sj_retry_task.namespace_id IS '命名空间id';
+COMMENT ON COLUMN sj_retry_task.group_name IS '组名称';
+COMMENT ON COLUMN sj_retry_task.scene_name IS '场景名称';
+COMMENT ON COLUMN sj_retry_task.retry_id IS '重试信息Id';
+COMMENT ON COLUMN sj_retry_task.ext_attrs IS '扩展字段';
+COMMENT ON COLUMN sj_retry_task.task_status IS '重试状态';
+COMMENT ON COLUMN sj_retry_task.task_type IS '任务类型 1、重试数据 2、回调数据';
+COMMENT ON COLUMN sj_retry_task.operation_reason IS '操作原因';
+COMMENT ON COLUMN sj_retry_task.client_info IS '客户端地址 clientId#ip:port';
+COMMENT ON COLUMN sj_retry_task.create_dt IS '创建时间';
+COMMENT ON COLUMN sj_retry_task.update_dt IS '修改时间';
+COMMENT ON TABLE sj_retry_task IS '重试任务表';
-- sj_retry_task_log_message
CREATE TABLE sj_retry_task_log_message
(
- id number GENERATED ALWAYS AS IDENTITY,
- namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
- group_name varchar2(64) NULL,
- unique_id varchar2(64) NULL,
- message clob NULL,
- log_num number DEFAULT 1 NOT NULL,
- real_time number DEFAULT 0 NOT NULL,
- create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
+ id number GENERATED ALWAYS AS IDENTITY,
+ namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
+ group_name varchar2(64) NULL,
+ retry_id number NOT NULL,
+ retry_task_id number NOT NULL,
+ message clob NULL,
+ log_num number DEFAULT 1 NOT NULL,
+ real_time number DEFAULT 0 NOT NULL,
+ create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
);
ALTER TABLE sj_retry_task_log_message
ADD CONSTRAINT pk_sj_retry_task_log_message PRIMARY KEY (id);
-CREATE INDEX idx_sj_rt_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id);
+CREATE INDEX idx_sj_rt_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, retry_task_id);
CREATE INDEX idx_sj_rt_log_message_02 ON sj_retry_task_log_message (create_dt);
COMMENT ON COLUMN sj_retry_task_log_message.id IS '主键';
COMMENT ON COLUMN sj_retry_task_log_message.namespace_id IS '命名空间id';
COMMENT ON COLUMN sj_retry_task_log_message.group_name IS '组名称';
-COMMENT ON COLUMN sj_retry_task_log_message.unique_id IS '同组下id唯一';
+COMMENT ON COLUMN sj_retry_task_log_message.retry_id IS '重试信息Id';
+COMMENT ON COLUMN sj_retry_task_log_message.retry_task_id IS '重试任务Id';
COMMENT ON COLUMN sj_retry_task_log_message.message IS '异常信息';
COMMENT ON COLUMN sj_retry_task_log_message.log_num IS '日志数量';
COMMENT ON COLUMN sj_retry_task_log_message.real_time IS '上报时间';
@@ -313,21 +306,26 @@ COMMENT ON TABLE sj_retry_task_log_message IS '任务调度日志信息记录表
-- sj_retry_scene_config
CREATE TABLE sj_retry_scene_config
(
- id number GENERATED ALWAYS AS IDENTITY,
- namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
- scene_name varchar2(64) NULL,
- group_name varchar2(64) NULL,
- scene_status smallint DEFAULT 0 NOT NULL,
- max_retry_count number DEFAULT 5 NOT NULL,
- back_off smallint DEFAULT 1 NOT NULL,
- trigger_interval varchar2(16) DEFAULT '' NULL,
- notify_ids varchar2(128) DEFAULT '' NULL,
- deadline_request number DEFAULT 60000 NOT NULL,
- executor_timeout number DEFAULT 5 NOT NULL,
- route_key smallint DEFAULT 4 NOT NULL,
- description varchar2(256) DEFAULT '' NULL,
- create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL,
- update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
+ id number GENERATED ALWAYS AS IDENTITY,
+ namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
+ scene_name varchar2(64) NULL,
+ group_name varchar2(64) NULL,
+ scene_status smallint DEFAULT 0 NOT NULL,
+ max_retry_count number DEFAULT 5 NOT NULL,
+ back_off smallint DEFAULT 1 NOT NULL,
+ trigger_interval varchar2(16) DEFAULT '' NULL,
+ notify_ids varchar2(128) DEFAULT '' NULL,
+ deadline_request number DEFAULT 60000 NOT NULL,
+ executor_timeout number DEFAULT 5 NOT NULL,
+ route_key smallint DEFAULT 4 NOT NULL,
+ block_strategy smallint DEFAULT 1 NOT NULL,
+ cb_status smallint DEFAULT 0 NOT NULL,
+ cb_trigger_type smallint DEFAULT 1 NOT NULL,
+ cb_max_count number DEFAULT 16 NOT NULL,
+ cb_trigger_interval varchar2(16) DEFAULT '' NULL,
+ description varchar2(256) DEFAULT '' NULL,
+ create_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL,
+ update_dt date DEFAULT CURRENT_TIMESTAMP NOT NULL
);
ALTER TABLE sj_retry_scene_config
@@ -347,6 +345,11 @@ COMMENT ON COLUMN sj_retry_scene_config.notify_ids IS '通知告警场景配置i
COMMENT ON COLUMN sj_retry_scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒';
COMMENT ON COLUMN sj_retry_scene_config.executor_timeout IS '任务执行超时时间,单位秒';
COMMENT ON COLUMN sj_retry_scene_config.route_key IS '路由策略';
+COMMENT ON COLUMN sj_retry_scene_config.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
+COMMENT ON COLUMN sj_retry_scene_config.cb_status IS '回调状态 0、不开启 1、开启';
+COMMENT ON COLUMN sj_retry_scene_config.cb_trigger_type IS '1、默认等级 2、固定间隔时间 3、CRON 表达式';
+COMMENT ON COLUMN sj_retry_scene_config.cb_max_count IS '回调的最大执行次数';
+COMMENT ON COLUMN sj_retry_scene_config.cb_trigger_interval IS '回调的最大执行次数';
COMMENT ON COLUMN sj_retry_scene_config.description IS '描述';
COMMENT ON COLUMN sj_retry_scene_config.create_dt IS '创建时间';
COMMENT ON COLUMN sj_retry_scene_config.update_dt IS '修改时间';
@@ -538,11 +541,11 @@ COMMENT ON COLUMN sj_job.executor_type IS '执行器类型';
COMMENT ON COLUMN sj_job.executor_info IS '执行器名称';
COMMENT ON COLUMN sj_job.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
COMMENT ON COLUMN sj_job.trigger_interval IS '间隔时长';
-COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
+COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复';
COMMENT ON COLUMN sj_job.executor_timeout IS '任务执行超时时间,单位秒';
COMMENT ON COLUMN sj_job.max_retry_times IS '最大重试次数';
COMMENT ON COLUMN sj_job.parallel_num IS '并行数';
-COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s ) ';
+COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s)';
COMMENT ON COLUMN sj_job.bucket_index IS 'bucket';
COMMENT ON COLUMN sj_job.resident IS '是否是常驻任务';
COMMENT ON COLUMN sj_job.notify_ids IS '通知告警场景配置id列表';
@@ -721,7 +724,7 @@ CREATE INDEX idx_sj_job_summary_01 ON sj_job_summary (namespace_id, group_name,
COMMENT ON COLUMN sj_job_summary.id IS '主键';
COMMENT ON COLUMN sj_job_summary.namespace_id IS '命名空间id';
COMMENT ON COLUMN sj_job_summary.group_name IS '组名称';
-COMMENT ON COLUMN sj_job_summary.business_id IS '业务id ( job_id或workflow_id ) ';
+COMMENT ON COLUMN sj_job_summary.business_id IS '业务id ( job_id或workflow_id)';
COMMENT ON COLUMN sj_job_summary.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务';
COMMENT ON COLUMN sj_job_summary.trigger_at IS '统计时间';
COMMENT ON COLUMN sj_job_summary.success_num IS '执行成功-日志数量';
diff --git a/script/sql/postgres/postgres_ry_job.sql b/script/sql/postgres/postgres_ry_job.sql
index 1a08a9990..8b682dfe5 100644
--- a/script/sql/postgres/postgres_ry_job.sql
+++ b/script/sql/postgres/postgres_ry_job.sql
@@ -2,7 +2,7 @@
SnailJob Database Transfer Tool
Source Server Type : MySQL
Target Server Type : PostgreSQL
- Date: 2024-12-27 22:13:49
+ Date: 2025-02-25 22:15:32
*/
@@ -45,7 +45,6 @@ CREATE TABLE sj_group_config
group_partition int NOT NULL,
id_generator_mode smallint NOT NULL DEFAULT 1,
init_scene smallint NOT NULL DEFAULT 0,
- bucket_index int NOT NULL DEFAULT 0,
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
);
@@ -62,13 +61,12 @@ COMMENT ON COLUMN sj_group_config.version IS '版本号';
COMMENT ON COLUMN sj_group_config.group_partition IS '分区';
COMMENT ON COLUMN sj_group_config.id_generator_mode IS '唯一id生成模式 默认号段模式';
COMMENT ON COLUMN sj_group_config.init_scene IS '是否初始化场景 0:否 1:是';
-COMMENT ON COLUMN sj_group_config.bucket_index IS 'bucket';
COMMENT ON COLUMN sj_group_config.create_dt IS '创建时间';
COMMENT ON COLUMN sj_group_config.update_dt IS '修改时间';
COMMENT ON TABLE sj_group_config IS '组配置';
-INSERT INTO sj_group_config VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now());
-INSERT INTO sj_group_config VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now());
+INSERT INTO sj_group_config VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, now(), now());
+INSERT INTO sj_group_config VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, now(), now());
-- sj_notify_config
CREATE TABLE sj_notify_config
@@ -132,12 +130,11 @@ COMMENT ON COLUMN sj_notify_recipient.create_dt IS '创建时间';
COMMENT ON COLUMN sj_notify_recipient.update_dt IS '修改时间';
COMMENT ON TABLE sj_notify_recipient IS '告警通知接收人';
--- sj_retry_dead_letter_0
-CREATE TABLE sj_retry_dead_letter_0
+-- sj_retry_dead_letter
+CREATE TABLE sj_retry_dead_letter
(
id bigserial PRIMARY KEY,
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
- unique_id varchar(64) NOT NULL,
group_name varchar(64) NOT NULL,
scene_name varchar(64) NOT NULL,
idempotent_id varchar(64) NOT NULL,
@@ -145,37 +142,31 @@ CREATE TABLE sj_retry_dead_letter_0
executor_name varchar(512) NOT NULL DEFAULT '',
args_str text NOT NULL,
ext_attrs text NOT NULL,
- task_type smallint NOT NULL DEFAULT 1,
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
);
-CREATE UNIQUE INDEX uk_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, unique_id);
+CREATE INDEX idx_sj_retry_dead_letter_01 ON sj_retry_dead_letter (namespace_id, group_name, scene_name);
+CREATE INDEX idx_sj_retry_dead_letter_02 ON sj_retry_dead_letter (idempotent_id);
+CREATE INDEX idx_sj_retry_dead_letter_03 ON sj_retry_dead_letter (biz_no);
+CREATE INDEX idx_sj_retry_dead_letter_04 ON sj_retry_dead_letter (create_dt);
-CREATE INDEX idx_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, scene_name);
-CREATE INDEX idx_sj_retry_dead_letter_0_02 ON sj_retry_dead_letter_0 (idempotent_id);
-CREATE INDEX idx_sj_retry_dead_letter_0_03 ON sj_retry_dead_letter_0 (biz_no);
-CREATE INDEX idx_sj_retry_dead_letter_0_04 ON sj_retry_dead_letter_0 (create_dt);
+COMMENT ON COLUMN sj_retry_dead_letter.id IS '主键';
+COMMENT ON COLUMN sj_retry_dead_letter.namespace_id IS '命名空间id';
+COMMENT ON COLUMN sj_retry_dead_letter.group_name IS '组名称';
+COMMENT ON COLUMN sj_retry_dead_letter.scene_name IS '场景名称';
+COMMENT ON COLUMN sj_retry_dead_letter.idempotent_id IS '幂等id';
+COMMENT ON COLUMN sj_retry_dead_letter.biz_no IS '业务编号';
+COMMENT ON COLUMN sj_retry_dead_letter.executor_name IS '执行器名称';
+COMMENT ON COLUMN sj_retry_dead_letter.args_str IS '执行方法参数';
+COMMENT ON COLUMN sj_retry_dead_letter.ext_attrs IS '扩展字段';
+COMMENT ON COLUMN sj_retry_dead_letter.create_dt IS '创建时间';
+COMMENT ON TABLE sj_retry_dead_letter IS '死信队列表';
-COMMENT ON COLUMN sj_retry_dead_letter_0.id IS '主键';
-COMMENT ON COLUMN sj_retry_dead_letter_0.namespace_id IS '命名空间id';
-COMMENT ON COLUMN sj_retry_dead_letter_0.unique_id IS '同组下id唯一';
-COMMENT ON COLUMN sj_retry_dead_letter_0.group_name IS '组名称';
-COMMENT ON COLUMN sj_retry_dead_letter_0.scene_name IS '场景名称';
-COMMENT ON COLUMN sj_retry_dead_letter_0.idempotent_id IS '幂等id';
-COMMENT ON COLUMN sj_retry_dead_letter_0.biz_no IS '业务编号';
-COMMENT ON COLUMN sj_retry_dead_letter_0.executor_name IS '执行器名称';
-COMMENT ON COLUMN sj_retry_dead_letter_0.args_str IS '执行方法参数';
-COMMENT ON COLUMN sj_retry_dead_letter_0.ext_attrs IS '扩展字段';
-COMMENT ON COLUMN sj_retry_dead_letter_0.task_type IS '任务类型 1、重试数据 2、回调数据';
-COMMENT ON COLUMN sj_retry_dead_letter_0.create_dt IS '创建时间';
-COMMENT ON TABLE sj_retry_dead_letter_0 IS '死信队列表';
-
--- sj_retry_task_0
-CREATE TABLE sj_retry_task_0
+-- sj_retry
+CREATE TABLE sj_retry
(
id bigserial PRIMARY KEY,
namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
- unique_id varchar(64) NOT NULL,
group_name varchar(64) NOT NULL,
scene_name varchar(64) NOT NULL,
idempotent_id varchar(64) NOT NULL,
@@ -183,103 +174,104 @@ CREATE TABLE sj_retry_task_0
executor_name varchar(512) NOT NULL DEFAULT '',
args_str text NOT NULL,
ext_attrs text NOT NULL,
- next_trigger_at timestamp NOT NULL,
+ next_trigger_at bigint NOT NULL,
retry_count int NOT NULL DEFAULT 0,
retry_status smallint NOT NULL DEFAULT 0,
task_type smallint NOT NULL DEFAULT 1,
+ bucket_index int NOT NULL DEFAULT 0,
+ parent_id bigint NOT NULL DEFAULT 0,
+ deleted bigint NOT NULL DEFAULT 0,
create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
);
-CREATE UNIQUE INDEX uk_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, unique_id);
+CREATE UNIQUE INDEX uk_sj_retry_01 ON sj_retry (namespace_id, group_name, task_type, idempotent_id, deleted);
-CREATE INDEX idx_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, scene_name);
-CREATE INDEX idx_sj_retry_task_0_02 ON sj_retry_task_0 (namespace_id, group_name, task_type);
-CREATE INDEX idx_sj_retry_task_0_03 ON sj_retry_task_0 (namespace_id, group_name, retry_status);
-CREATE INDEX idx_sj_retry_task_0_04 ON sj_retry_task_0 (idempotent_id);
-CREATE INDEX idx_sj_retry_task_0_05 ON sj_retry_task_0 (biz_no);
-CREATE INDEX idx_sj_retry_task_0_06 ON sj_retry_task_0 (create_dt);
+CREATE INDEX idx_sj_retry_01 ON sj_retry (namespace_id, group_name, scene_name);
+CREATE INDEX idx_sj_retry_02 ON sj_retry (namespace_id, group_name, retry_status);
+CREATE INDEX idx_sj_retry_03 ON sj_retry (idempotent_id);
+CREATE INDEX idx_sj_retry_04 ON sj_retry (biz_no);
+CREATE INDEX idx_sj_retry_05 ON sj_retry (parent_id);
+CREATE INDEX idx_sj_retry_06 ON sj_retry (create_dt);
-COMMENT ON COLUMN sj_retry_task_0.id IS '主键';
-COMMENT ON COLUMN sj_retry_task_0.namespace_id IS '命名空间id';
-COMMENT ON COLUMN sj_retry_task_0.unique_id IS '同组下id唯一';
-COMMENT ON COLUMN sj_retry_task_0.group_name IS '组名称';
-COMMENT ON COLUMN sj_retry_task_0.scene_name IS '场景名称';
-COMMENT ON COLUMN sj_retry_task_0.idempotent_id IS '幂等id';
-COMMENT ON COLUMN sj_retry_task_0.biz_no IS '业务编号';
-COMMENT ON COLUMN sj_retry_task_0.executor_name IS '执行器名称';
-COMMENT ON COLUMN sj_retry_task_0.args_str IS '执行方法参数';
-COMMENT ON COLUMN sj_retry_task_0.ext_attrs IS '扩展字段';
-COMMENT ON COLUMN sj_retry_task_0.next_trigger_at IS '下次触发时间';
-COMMENT ON COLUMN sj_retry_task_0.retry_count IS '重试次数';
-COMMENT ON COLUMN sj_retry_task_0.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数';
-COMMENT ON COLUMN sj_retry_task_0.task_type IS '任务类型 1、重试数据 2、回调数据';
-COMMENT ON COLUMN sj_retry_task_0.create_dt IS '创建时间';
-COMMENT ON COLUMN sj_retry_task_0.update_dt IS '修改时间';
-COMMENT ON TABLE sj_retry_task_0 IS '任务表';
+COMMENT ON COLUMN sj_retry.id IS '主键';
+COMMENT ON COLUMN sj_retry.namespace_id IS '命名空间id';
+COMMENT ON COLUMN sj_retry.group_name IS '组名称';
+COMMENT ON COLUMN sj_retry.scene_name IS '场景名称';
+COMMENT ON COLUMN sj_retry.idempotent_id IS '幂等id';
+COMMENT ON COLUMN sj_retry.biz_no IS '业务编号';
+COMMENT ON COLUMN sj_retry.executor_name IS '执行器名称';
+COMMENT ON COLUMN sj_retry.args_str IS '执行方法参数';
+COMMENT ON COLUMN sj_retry.ext_attrs IS '扩展字段';
+COMMENT ON COLUMN sj_retry.next_trigger_at IS '下次触发时间';
+COMMENT ON COLUMN sj_retry.retry_count IS '重试次数';
+COMMENT ON COLUMN sj_retry.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数';
+COMMENT ON COLUMN sj_retry.task_type IS '任务类型 1、重试数据 2、回调数据';
+COMMENT ON COLUMN sj_retry.bucket_index IS 'bucket';
+COMMENT ON COLUMN sj_retry.parent_id IS '父节点id';
+COMMENT ON COLUMN sj_retry.deleted IS '逻辑删除';
+COMMENT ON COLUMN sj_retry.create_dt IS '创建时间';
+COMMENT ON COLUMN sj_retry.update_dt IS '修改时间';
+COMMENT ON TABLE sj_retry IS '重试信息表';
--- sj_retry_task_log
-CREATE TABLE sj_retry_task_log
+-- sj_retry_task
+CREATE TABLE sj_retry_task
(
- id bigserial PRIMARY KEY,
- namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
- unique_id varchar(64) NOT NULL,
- group_name varchar(64) NOT NULL,
- scene_name varchar(64) NOT NULL,
- idempotent_id varchar(64) NOT NULL,
- biz_no varchar(64) NOT NULL DEFAULT '',
- executor_name varchar(512) NOT NULL DEFAULT '',
- args_str text NOT NULL,
- ext_attrs text NOT NULL,
- retry_status smallint NOT NULL DEFAULT 0,
- task_type smallint NOT NULL DEFAULT 1,
- create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
- update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
+ id bigserial PRIMARY KEY,
+ namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
+ group_name varchar(64) NOT NULL,
+ scene_name varchar(64) NOT NULL,
+ retry_id bigint NOT NULL,
+ ext_attrs text NOT NULL,
+ task_status smallint NOT NULL DEFAULT 1,
+ task_type smallint NOT NULL DEFAULT 1,
+ operation_reason smallint NOT NULL DEFAULT 0,
+ client_info varchar(128) NULL DEFAULT NULL,
+ create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
);
-CREATE INDEX idx_sj_retry_task_log_01 ON sj_retry_task_log (namespace_id, group_name, scene_name);
-CREATE INDEX idx_sj_retry_task_log_02 ON sj_retry_task_log (retry_status);
-CREATE INDEX idx_sj_retry_task_log_03 ON sj_retry_task_log (idempotent_id);
-CREATE INDEX idx_sj_retry_task_log_04 ON sj_retry_task_log (unique_id);
-CREATE INDEX idx_sj_retry_task_log_05 ON sj_retry_task_log (biz_no);
-CREATE INDEX idx_sj_retry_task_log_06 ON sj_retry_task_log (create_dt);
+CREATE INDEX idx_sj_retry_task_01 ON sj_retry_task (namespace_id, group_name, scene_name);
+CREATE INDEX idx_sj_retry_task_02 ON sj_retry_task (task_status);
+CREATE INDEX idx_sj_retry_task_03 ON sj_retry_task (create_dt);
+CREATE INDEX idx_sj_retry_task_04 ON sj_retry_task (retry_id);
-COMMENT ON COLUMN sj_retry_task_log.id IS '主键';
-COMMENT ON COLUMN sj_retry_task_log.namespace_id IS '命名空间id';
-COMMENT ON COLUMN sj_retry_task_log.unique_id IS '同组下id唯一';
-COMMENT ON COLUMN sj_retry_task_log.group_name IS '组名称';
-COMMENT ON COLUMN sj_retry_task_log.scene_name IS '场景名称';
-COMMENT ON COLUMN sj_retry_task_log.idempotent_id IS '幂等id';
-COMMENT ON COLUMN sj_retry_task_log.biz_no IS '业务编号';
-COMMENT ON COLUMN sj_retry_task_log.executor_name IS '执行器名称';
-COMMENT ON COLUMN sj_retry_task_log.args_str IS '执行方法参数';
-COMMENT ON COLUMN sj_retry_task_log.ext_attrs IS '扩展字段';
-COMMENT ON COLUMN sj_retry_task_log.retry_status IS '重试状态 0、重试中 1、成功 2、最大次数';
-COMMENT ON COLUMN sj_retry_task_log.task_type IS '任务类型 1、重试数据 2、回调数据';
-COMMENT ON COLUMN sj_retry_task_log.create_dt IS '创建时间';
-COMMENT ON COLUMN sj_retry_task_log.update_dt IS '修改时间';
-COMMENT ON TABLE sj_retry_task_log IS '任务日志基础信息表';
+COMMENT ON COLUMN sj_retry_task.id IS '主键';
+COMMENT ON COLUMN sj_retry_task.namespace_id IS '命名空间id';
+COMMENT ON COLUMN sj_retry_task.group_name IS '组名称';
+COMMENT ON COLUMN sj_retry_task.scene_name IS '场景名称';
+COMMENT ON COLUMN sj_retry_task.retry_id IS '重试信息Id';
+COMMENT ON COLUMN sj_retry_task.ext_attrs IS '扩展字段';
+COMMENT ON COLUMN sj_retry_task.task_status IS '重试状态';
+COMMENT ON COLUMN sj_retry_task.task_type IS '任务类型 1、重试数据 2、回调数据';
+COMMENT ON COLUMN sj_retry_task.operation_reason IS '操作原因';
+COMMENT ON COLUMN sj_retry_task.client_info IS '客户端地址 clientId#ip:port';
+COMMENT ON COLUMN sj_retry_task.create_dt IS '创建时间';
+COMMENT ON COLUMN sj_retry_task.update_dt IS '修改时间';
+COMMENT ON TABLE sj_retry_task IS '重试任务表';
-- sj_retry_task_log_message
CREATE TABLE sj_retry_task_log_message
(
- id bigserial PRIMARY KEY,
- namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
- group_name varchar(64) NOT NULL,
- unique_id varchar(64) NOT NULL,
- message text NOT NULL,
- log_num int NOT NULL DEFAULT 1,
- real_time bigint NOT NULL DEFAULT 0,
- create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
+ id bigserial PRIMARY KEY,
+ namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
+ group_name varchar(64) NOT NULL,
+ retry_id bigint NOT NULL,
+ retry_task_id bigint NOT NULL,
+ message text NOT NULL,
+ log_num int NOT NULL DEFAULT 1,
+ real_time bigint NOT NULL DEFAULT 0,
+ create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
);
-CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id);
+CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, retry_task_id);
CREATE INDEX idx_sj_retry_task_log_message_02 ON sj_retry_task_log_message (create_dt);
COMMENT ON COLUMN sj_retry_task_log_message.id IS '主键';
COMMENT ON COLUMN sj_retry_task_log_message.namespace_id IS '命名空间id';
COMMENT ON COLUMN sj_retry_task_log_message.group_name IS '组名称';
-COMMENT ON COLUMN sj_retry_task_log_message.unique_id IS '同组下id唯一';
+COMMENT ON COLUMN sj_retry_task_log_message.retry_id IS '重试信息Id';
+COMMENT ON COLUMN sj_retry_task_log_message.retry_task_id IS '重试任务Id';
COMMENT ON COLUMN sj_retry_task_log_message.message IS '异常信息';
COMMENT ON COLUMN sj_retry_task_log_message.log_num IS '日志数量';
COMMENT ON COLUMN sj_retry_task_log_message.real_time IS '上报时间';
@@ -289,21 +281,26 @@ COMMENT ON TABLE sj_retry_task_log_message IS '任务调度日志信息记录表
-- sj_retry_scene_config
CREATE TABLE sj_retry_scene_config
(
- id bigserial PRIMARY KEY,
- namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
- scene_name varchar(64) NOT NULL,
- group_name varchar(64) NOT NULL,
- scene_status smallint NOT NULL DEFAULT 0,
- max_retry_count int NOT NULL DEFAULT 5,
- back_off smallint NOT NULL DEFAULT 1,
- trigger_interval varchar(16) NOT NULL DEFAULT '',
- notify_ids varchar(128) NOT NULL DEFAULT '',
- deadline_request bigint NOT NULL DEFAULT 60000,
- executor_timeout int NOT NULL DEFAULT 5,
- route_key smallint NOT NULL DEFAULT 4,
- description varchar(256) NOT NULL DEFAULT '',
- create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
- update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
+ id bigserial PRIMARY KEY,
+ namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
+ scene_name varchar(64) NOT NULL,
+ group_name varchar(64) NOT NULL,
+ scene_status smallint NOT NULL DEFAULT 0,
+ max_retry_count int NOT NULL DEFAULT 5,
+ back_off smallint NOT NULL DEFAULT 1,
+ trigger_interval varchar(16) NOT NULL DEFAULT '',
+ notify_ids varchar(128) NOT NULL DEFAULT '',
+ deadline_request bigint NOT NULL DEFAULT 60000,
+ executor_timeout int NOT NULL DEFAULT 5,
+ route_key smallint NOT NULL DEFAULT 4,
+ block_strategy smallint NOT NULL DEFAULT 1,
+ cb_status smallint NOT NULL DEFAULT 0,
+ cb_trigger_type smallint NOT NULL DEFAULT 1,
+ cb_max_count int NOT NULL DEFAULT 16,
+ cb_trigger_interval varchar(16) NOT NULL DEFAULT '',
+ description varchar(256) NOT NULL DEFAULT '',
+ create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
);
CREATE UNIQUE INDEX uk_sj_retry_scene_config_01 ON sj_retry_scene_config (namespace_id, group_name, scene_name);
@@ -320,6 +317,11 @@ COMMENT ON COLUMN sj_retry_scene_config.notify_ids IS '通知告警场景配置i
COMMENT ON COLUMN sj_retry_scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒';
COMMENT ON COLUMN sj_retry_scene_config.executor_timeout IS '任务执行超时时间,单位秒';
COMMENT ON COLUMN sj_retry_scene_config.route_key IS '路由策略';
+COMMENT ON COLUMN sj_retry_scene_config.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
+COMMENT ON COLUMN sj_retry_scene_config.cb_status IS '回调状态 0、不开启 1、开启';
+COMMENT ON COLUMN sj_retry_scene_config.cb_trigger_type IS '1、默认等级 2、固定间隔时间 3、CRON 表达式';
+COMMENT ON COLUMN sj_retry_scene_config.cb_max_count IS '回调的最大执行次数';
+COMMENT ON COLUMN sj_retry_scene_config.cb_trigger_interval IS '回调的最大执行次数';
COMMENT ON COLUMN sj_retry_scene_config.description IS '描述';
COMMENT ON COLUMN sj_retry_scene_config.create_dt IS '创建时间';
COMMENT ON COLUMN sj_retry_scene_config.update_dt IS '修改时间';
@@ -362,7 +364,7 @@ COMMENT ON TABLE sj_server_node IS '服务器节点';
-- sj_distributed_lock
CREATE TABLE sj_distributed_lock
(
- name varchar(64) PRIMARY KEY,
+ name varchar(64) NOT NULL,
lock_until timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
locked_at timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
locked_by varchar(255) NOT NULL,
@@ -493,11 +495,11 @@ COMMENT ON COLUMN sj_job.executor_type IS '执行器类型';
COMMENT ON COLUMN sj_job.executor_info IS '执行器名称';
COMMENT ON COLUMN sj_job.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
COMMENT ON COLUMN sj_job.trigger_interval IS '间隔时长';
-COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
+COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复';
COMMENT ON COLUMN sj_job.executor_timeout IS '任务执行超时时间,单位秒';
COMMENT ON COLUMN sj_job.max_retry_times IS '最大重试次数';
COMMENT ON COLUMN sj_job.parallel_num IS '并行数';
-COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s ) ';
+COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s)';
COMMENT ON COLUMN sj_job.bucket_index IS 'bucket';
COMMENT ON COLUMN sj_job.resident IS '是否是常驻任务';
COMMENT ON COLUMN sj_job.notify_ids IS '通知告警场景配置id列表';
@@ -664,7 +666,7 @@ CREATE INDEX idx_sj_job_summary_01 ON sj_job_summary (namespace_id, group_name,
COMMENT ON COLUMN sj_job_summary.id IS '主键';
COMMENT ON COLUMN sj_job_summary.namespace_id IS '命名空间id';
COMMENT ON COLUMN sj_job_summary.group_name IS '组名称';
-COMMENT ON COLUMN sj_job_summary.business_id IS '业务id ( job_id或workflow_id ) ';
+COMMENT ON COLUMN sj_job_summary.business_id IS '业务id ( job_id或workflow_id)';
COMMENT ON COLUMN sj_job_summary.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务';
COMMENT ON COLUMN sj_job_summary.trigger_at IS '统计时间';
COMMENT ON COLUMN sj_job_summary.success_num IS '执行成功-日志数量';
diff --git a/script/sql/ry_job.sql b/script/sql/ry_job.sql
index c6ec01b45..3577d6614 100644
--- a/script/sql/ry_job.sql
+++ b/script/sql/ry_job.sql
@@ -30,7 +30,6 @@ CREATE TABLE `sj_group_config`
`group_partition` int(11) NOT NULL COMMENT '分区',
`id_generator_mode` tinyint(4) NOT NULL DEFAULT 1 COMMENT '唯一id生成模式 默认号段模式',
`init_scene` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否初始化场景 0:否 1:是',
- `bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket',
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
PRIMARY KEY (`id`),
@@ -39,8 +38,8 @@ CREATE TABLE `sj_group_config`
AUTO_INCREMENT = 0
DEFAULT CHARSET = utf8mb4 COMMENT ='组配置';
-INSERT INTO `sj_group_config` VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now());
-INSERT INTO `sj_group_config` VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now());
+INSERT INTO `sj_group_config` VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, now(), now());
+INSERT INTO `sj_group_config` VALUES (2, 'prod', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, now(), now());
CREATE TABLE `sj_notify_config`
(
@@ -80,11 +79,10 @@ CREATE TABLE `sj_notify_recipient`
AUTO_INCREMENT = 0
DEFAULT CHARSET = utf8mb4 COMMENT ='告警通知接收人';
-CREATE TABLE `sj_retry_dead_letter_0`
+CREATE TABLE `sj_retry_dead_letter`
(
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
- `unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一',
`group_name` varchar(64) NOT NULL COMMENT '组名称',
`scene_name` varchar(64) NOT NULL COMMENT '场景名称',
`idempotent_id` varchar(64) NOT NULL COMMENT '幂等id',
@@ -92,23 +90,20 @@ CREATE TABLE `sj_retry_dead_letter_0`
`executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称',
`args_str` text NOT NULL COMMENT '执行方法参数',
`ext_attrs` text NOT NULL COMMENT '扩展字段',
- `task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`),
KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`),
KEY `idx_idempotent_id` (`idempotent_id`),
KEY `idx_biz_no` (`biz_no`),
- KEY `idx_create_dt` (`create_dt`),
- UNIQUE KEY `uk_namespace_id_group_name_unique_id` (`namespace_id`, `group_name`, `unique_id`)
+ KEY `idx_create_dt` (`create_dt`)
) ENGINE = InnoDB
AUTO_INCREMENT = 0
DEFAULT CHARSET = utf8mb4 COMMENT ='死信队列表';
-CREATE TABLE `sj_retry_task_0`
+CREATE TABLE `sj_retry`
(
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
`namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
- `unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一',
`group_name` varchar(64) NOT NULL COMMENT '组名称',
`scene_name` varchar(64) NOT NULL COMMENT '场景名称',
`idempotent_id` varchar(64) NOT NULL COMMENT '幂等id',
@@ -116,63 +111,63 @@ CREATE TABLE `sj_retry_task_0`
`executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称',
`args_str` text NOT NULL COMMENT '执行方法参数',
`ext_attrs` text NOT NULL COMMENT '扩展字段',
- `next_trigger_at` datetime NOT NULL COMMENT '下次触发时间',
+ `next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间',
`retry_count` int(11) NOT NULL DEFAULT 0 COMMENT '重试次数',
`retry_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '重试状态 0、重试中 1、成功 2、最大重试次数',
`task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
+ `bucket_index` int(11) NOT NULL DEFAULT 0 COMMENT 'bucket',
+ `parent_id` bigint(20) NOT NULL DEFAULT 0 COMMENT '父节点id',
+ `deleted` bigint(20) NOT NULL DEFAULT 0 COMMENT '逻辑删除',
`create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
PRIMARY KEY (`id`),
KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`),
- KEY `idx_namespace_id_group_name_task_type` (`namespace_id`, `group_name`, `task_type`),
KEY `idx_namespace_id_group_name_retry_status` (`namespace_id`, `group_name`, `retry_status`),
KEY `idx_idempotent_id` (`idempotent_id`),
KEY `idx_biz_no` (`biz_no`),
+ KEY `idx_parent_id` (`parent_id`),
KEY `idx_create_dt` (`create_dt`),
- UNIQUE KEY `uk_name_unique_id` (`namespace_id`, `group_name`, `unique_id`)
+ UNIQUE KEY `uk_name_task_type_idempotent_id_deleted` (`namespace_id`, `group_name`, `task_type`, `idempotent_id`, `deleted`)
) ENGINE = InnoDB
AUTO_INCREMENT = 0
- DEFAULT CHARSET = utf8mb4 COMMENT ='任务表';
+ DEFAULT CHARSET = utf8mb4 COMMENT ='重试信息表';
-CREATE TABLE `sj_retry_task_log`
+CREATE TABLE `sj_retry_task`
(
- `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
- `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
- `unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一',
- `group_name` varchar(64) NOT NULL COMMENT '组名称',
- `scene_name` varchar(64) NOT NULL COMMENT '场景名称',
- `idempotent_id` varchar(64) NOT NULL COMMENT '幂等id',
- `biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号',
- `executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称',
- `args_str` text NOT NULL COMMENT '执行方法参数',
- `ext_attrs` text NOT NULL COMMENT '扩展字段',
- `retry_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '重试状态 0、重试中 1、成功 2、最大次数',
- `task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
- `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
- `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `scene_name` varchar(64) NOT NULL COMMENT '场景名称',
+ `retry_id` bigint(20) NOT NULL COMMENT '重试信息Id',
+ `ext_attrs` text NOT NULL COMMENT '扩展字段',
+ `task_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '重试状态',
+ `task_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
+ `operation_reason` tinyint(4) NOT NULL DEFAULT 0 COMMENT '操作原因',
+ `client_info` varchar(128) DEFAULT NULL COMMENT '客户端地址 clientId#ip:port',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
PRIMARY KEY (`id`),
KEY `idx_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`),
- KEY `idx_retry_status` (`retry_status`),
- KEY `idx_idempotent_id` (`idempotent_id`),
- KEY `idx_unique_id` (`unique_id`),
- KEY `idx_biz_no` (`biz_no`),
- KEY `idx_create_dt` (`create_dt`)
+ KEY `task_status` (`task_status`),
+ KEY `idx_create_dt` (`create_dt`),
+ KEY `idx_retry_id` (`retry_id`)
) ENGINE = InnoDB
AUTO_INCREMENT = 0
- DEFAULT CHARSET = utf8mb4 COMMENT ='任务日志基础信息表';
+ DEFAULT CHARSET = utf8mb4 COMMENT ='重试任务表';
CREATE TABLE `sj_retry_task_log_message`
(
- `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
- `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
- `group_name` varchar(64) NOT NULL COMMENT '组名称',
- `unique_id` varchar(64) NOT NULL COMMENT '同组下id唯一',
- `message` longtext NOT NULL COMMENT '异常信息',
- `log_num` int(11) NOT NULL DEFAULT 1 COMMENT '日志数量',
- `real_time` bigint(13) NOT NULL DEFAULT 0 COMMENT '上报时间',
- `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `retry_id` bigint(20) NOT NULL COMMENT '重试信息Id',
+ `retry_task_id` bigint(20) NOT NULL COMMENT '重试任务Id',
+ `message` longtext NOT NULL COMMENT '异常信息',
+ `log_num` int(11) NOT NULL DEFAULT 1 COMMENT '日志数量',
+ `real_time` bigint(13) NOT NULL DEFAULT 0 COMMENT '上报时间',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (`id`),
- KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `unique_id`),
+ KEY `idx_namespace_id_group_name_retry_task_id` (`namespace_id`, `group_name`, `retry_task_id`),
KEY `idx_create_dt` (`create_dt`)
) ENGINE = InnoDB
AUTO_INCREMENT = 0
@@ -180,21 +175,26 @@ CREATE TABLE `sj_retry_task_log_message`
CREATE TABLE `sj_retry_scene_config`
(
- `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
- `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
- `scene_name` varchar(64) NOT NULL COMMENT '场景名称',
- `group_name` varchar(64) NOT NULL COMMENT '组名称',
- `scene_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '组状态 0、未启用 1、启用',
- `max_retry_count` int(11) NOT NULL DEFAULT 5 COMMENT '最大重试次数',
- `back_off` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式',
- `trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '间隔时长',
- `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表',
- `deadline_request` bigint(20) unsigned NOT NULL DEFAULT 60000 COMMENT 'Deadline Request 调用链超时 单位毫秒',
- `executor_timeout` int(11) unsigned NOT NULL DEFAULT 5 COMMENT '任务执行超时时间,单位秒',
- `route_key` tinyint(4) NOT NULL DEFAULT 4 COMMENT '路由策略',
- `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
- `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
- `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+ `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
+ `namespace_id` varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
+ `scene_name` varchar(64) NOT NULL COMMENT '场景名称',
+ `group_name` varchar(64) NOT NULL COMMENT '组名称',
+ `scene_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '组状态 0、未启用 1、启用',
+ `max_retry_count` int(11) NOT NULL DEFAULT 5 COMMENT '最大重试次数',
+ `back_off` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式',
+ `trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '间隔时长',
+ `notify_ids` varchar(128) NOT NULL DEFAULT '' COMMENT '通知告警场景配置id列表',
+ `deadline_request` bigint(20) unsigned NOT NULL DEFAULT 60000 COMMENT 'Deadline Request 调用链超时 单位毫秒',
+ `executor_timeout` int(11) unsigned NOT NULL DEFAULT 5 COMMENT '任务执行超时时间,单位秒',
+ `route_key` tinyint(4) NOT NULL DEFAULT 4 COMMENT '路由策略',
+ `block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
+ `cb_status` tinyint(4) NOT NULL DEFAULT 0 COMMENT '回调状态 0、不开启 1、开启',
+ `cb_trigger_type` tinyint(4) NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式',
+ `cb_max_count` int(11) NOT NULL DEFAULT 16 COMMENT '回调的最大执行次数',
+ `cb_trigger_interval` varchar(16) NOT NULL DEFAULT '' COMMENT '回调的最大执行次数',
+ `description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
+ `create_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
+ `update_dt` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`)
) ENGINE = InnoDB
@@ -249,7 +249,8 @@ CREATE TABLE `sj_system_user`
DEFAULT CHARSET = utf8mb4 COMMENT ='系统用户表';
-- pwd: admin
-INSERT INTO `sj_system_user` VALUES (1, 'admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2, now(), now());
+INSERT INTO `sj_system_user` (username, password, role)
+VALUES ('admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2);
CREATE TABLE `sj_system_user_permission`
(
@@ -294,7 +295,7 @@ CREATE TABLE `sj_job`
`executor_info` varchar(255) DEFAULT NULL COMMENT '执行器名称',
`trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间',
`trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长',
- `block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
+ `block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复',
`executor_timeout` int(11) NOT NULL DEFAULT 0 COMMENT '任务执行超时时间,单位秒',
`max_retry_times` int(11) NOT NULL DEFAULT 0 COMMENT '最大重试次数',
`parallel_num` int(11) NOT NULL DEFAULT 1 COMMENT '并行数',
@@ -448,7 +449,7 @@ CREATE TABLE `sj_workflow`
`workflow_status` tinyint(4) NOT NULL DEFAULT 1 COMMENT '工作流状态 0、关闭、1、开启',
`trigger_type` tinyint(4) NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间',
`trigger_interval` varchar(255) NOT NULL COMMENT '间隔时长',
- `next_trigger_at` bigint(13) NOT NULL COMMENT '下次触发时间',
+ `next_trigger_at` bigint NOT NULL COMMENT '下次触发时间',
`block_strategy` tinyint(4) NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
`executor_timeout` int(11) NOT NULL DEFAULT 0 COMMENT '任务执行超时时间,单位秒',
`description` varchar(256) NOT NULL DEFAULT '' COMMENT '描述',
diff --git a/script/sql/sqlserver/sqlserver_ry_job.sql b/script/sql/sqlserver/sqlserver_ry_job.sql
index 97addc3aa..5a0bbb39b 100644
--- a/script/sql/sqlserver/sqlserver_ry_job.sql
+++ b/script/sql/sqlserver/sqlserver_ry_job.sql
@@ -2,7 +2,7 @@
SnailJob Database Transfer Tool
Source Server Type : MySQL
Target Server Type : Microsoft SQL Server
- Date: 2024-12-27 22:24:37
+ Date: 2025-02-25 22:16:48
*/
@@ -95,7 +95,6 @@ CREATE TABLE sj_group_config
group_partition int NOT NULL,
id_generator_mode tinyint NOT NULL DEFAULT 1,
init_scene tinyint NOT NULL DEFAULT 0,
- bucket_index int NOT NULL DEFAULT 0,
create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
)
@@ -174,13 +173,6 @@ EXEC sp_addextendedproperty
'COLUMN', N'init_scene'
GO
-EXEC sp_addextendedproperty
- 'MS_Description', N'bucket',
- 'SCHEMA', N'dbo',
- 'TABLE', N'sj_group_config',
- 'COLUMN', N'bucket_index'
-GO
-
EXEC sp_addextendedproperty
'MS_Description', N'创建时间',
'SCHEMA', N'dbo',
@@ -201,9 +193,9 @@ EXEC sp_addextendedproperty
'TABLE', N'sj_group_config'
GO
-INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES (N'dev', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', N'4', getdate(), getdate())
+INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, create_dt, update_dt) VALUES (N'dev', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', getdate(), getdate())
GO
-INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES (N'prod', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', N'4', getdate(), getdate())
+INSERT INTO sj_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, create_dt, update_dt) VALUES (N'prod', N'ruoyi_group', N'', N'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', N'1', N'1', N'0', N'1', N'1', getdate(), getdate())
GO
-- sj_notify_config
@@ -412,12 +404,11 @@ EXEC sp_addextendedproperty
'TABLE', N'sj_notify_recipient'
GO
--- sj_retry_dead_letter_0
-CREATE TABLE sj_retry_dead_letter_0
+-- sj_retry_dead_letter
+CREATE TABLE sj_retry_dead_letter
(
id bigint NOT NULL PRIMARY KEY IDENTITY,
namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
- unique_id nvarchar(64) NOT NULL,
group_name nvarchar(64) NOT NULL,
scene_name nvarchar(64) NOT NULL,
idempotent_id nvarchar(64) NOT NULL,
@@ -425,119 +416,100 @@ CREATE TABLE sj_retry_dead_letter_0
executor_name nvarchar(512) NOT NULL DEFAULT '',
args_str nvarchar(max) NOT NULL,
ext_attrs nvarchar(max) NOT NULL,
- task_type tinyint NOT NULL DEFAULT 1,
create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
)
GO
-CREATE UNIQUE INDEX uk_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, unique_id)
+CREATE INDEX idx_sj_retry_dead_letter_01 ON sj_retry_dead_letter (namespace_id, group_name, scene_name)
GO
-
-CREATE INDEX idx_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, scene_name)
+CREATE INDEX idx_sj_retry_dead_letter_02 ON sj_retry_dead_letter (idempotent_id)
GO
-CREATE INDEX idx_sj_retry_dead_letter_0_02 ON sj_retry_dead_letter_0 (idempotent_id)
+CREATE INDEX idx_sj_retry_dead_letter_03 ON sj_retry_dead_letter (biz_no)
GO
-CREATE INDEX idx_sj_retry_dead_letter_0_03 ON sj_retry_dead_letter_0 (biz_no)
-GO
-CREATE INDEX idx_sj_retry_dead_letter_0_04 ON sj_retry_dead_letter_0 (create_dt)
+CREATE INDEX idx_sj_retry_dead_letter_04 ON sj_retry_dead_letter (create_dt)
GO
EXEC sp_addextendedproperty
'MS_Description', N'主键',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_dead_letter_0',
+ 'TABLE', N'sj_retry_dead_letter',
'COLUMN', N'id'
GO
EXEC sp_addextendedproperty
'MS_Description', N'命名空间id',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_dead_letter_0',
+ 'TABLE', N'sj_retry_dead_letter',
'COLUMN', N'namespace_id'
GO
-EXEC sp_addextendedproperty
- 'MS_Description', N'同组下id唯一',
- 'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_dead_letter_0',
- 'COLUMN', N'unique_id'
-GO
-
EXEC sp_addextendedproperty
'MS_Description', N'组名称',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_dead_letter_0',
+ 'TABLE', N'sj_retry_dead_letter',
'COLUMN', N'group_name'
GO
EXEC sp_addextendedproperty
'MS_Description', N'场景名称',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_dead_letter_0',
+ 'TABLE', N'sj_retry_dead_letter',
'COLUMN', N'scene_name'
GO
EXEC sp_addextendedproperty
'MS_Description', N'幂等id',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_dead_letter_0',
+ 'TABLE', N'sj_retry_dead_letter',
'COLUMN', N'idempotent_id'
GO
EXEC sp_addextendedproperty
'MS_Description', N'业务编号',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_dead_letter_0',
+ 'TABLE', N'sj_retry_dead_letter',
'COLUMN', N'biz_no'
GO
EXEC sp_addextendedproperty
'MS_Description', N'执行器名称',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_dead_letter_0',
+ 'TABLE', N'sj_retry_dead_letter',
'COLUMN', N'executor_name'
GO
EXEC sp_addextendedproperty
'MS_Description', N'执行方法参数',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_dead_letter_0',
+ 'TABLE', N'sj_retry_dead_letter',
'COLUMN', N'args_str'
GO
EXEC sp_addextendedproperty
'MS_Description', N'扩展字段',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_dead_letter_0',
+ 'TABLE', N'sj_retry_dead_letter',
'COLUMN', N'ext_attrs'
GO
-EXEC sp_addextendedproperty
- 'MS_Description', N'任务类型 1、重试数据 2、回调数据',
- 'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_dead_letter_0',
- 'COLUMN', N'task_type'
-GO
-
EXEC sp_addextendedproperty
'MS_Description', N'创建时间',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_dead_letter_0',
+ 'TABLE', N'sj_retry_dead_letter',
'COLUMN', N'create_dt'
GO
EXEC sp_addextendedproperty
'MS_Description', N'死信队列表',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_dead_letter_0'
+ 'TABLE', N'sj_retry_dead_letter'
GO
--- sj_retry_task_0
-CREATE TABLE sj_retry_task_0
+-- sj_retry
+CREATE TABLE sj_retry
(
id bigint NOT NULL PRIMARY KEY IDENTITY,
namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
- unique_id nvarchar(64) NOT NULL,
group_name nvarchar(64) NOT NULL,
scene_name nvarchar(64) NOT NULL,
idempotent_id nvarchar(64) NOT NULL,
@@ -545,301 +517,299 @@ CREATE TABLE sj_retry_task_0
executor_name nvarchar(512) NOT NULL DEFAULT '',
args_str nvarchar(max) NOT NULL,
ext_attrs nvarchar(max) NOT NULL,
- next_trigger_at datetime2 NOT NULL,
+ next_trigger_at bigint NOT NULL,
retry_count int NOT NULL DEFAULT 0,
retry_status tinyint NOT NULL DEFAULT 0,
task_type tinyint NOT NULL DEFAULT 1,
+ bucket_index int NOT NULL DEFAULT 0,
+ parent_id bigint NOT NULL DEFAULT 0,
+ deleted bigint NOT NULL DEFAULT 0,
create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
)
GO
-CREATE UNIQUE INDEX uk_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, unique_id)
+CREATE UNIQUE INDEX uk_sj_retry_01 ON sj_retry (namespace_id, group_name, task_type, idempotent_id, deleted)
GO
-CREATE INDEX idx_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, scene_name)
+CREATE INDEX idx_sj_retry_01 ON sj_retry (namespace_id, group_name, scene_name)
GO
-CREATE INDEX idx_sj_retry_task_0_02 ON sj_retry_task_0 (namespace_id, group_name, task_type)
+CREATE INDEX idx_sj_retry_02 ON sj_retry (namespace_id, group_name, retry_status)
GO
-CREATE INDEX idx_sj_retry_task_0_03 ON sj_retry_task_0 (namespace_id, group_name, retry_status)
+CREATE INDEX idx_sj_retry_03 ON sj_retry (idempotent_id)
GO
-CREATE INDEX idx_sj_retry_task_0_04 ON sj_retry_task_0 (idempotent_id)
+CREATE INDEX idx_sj_retry_04 ON sj_retry (biz_no)
GO
-CREATE INDEX idx_sj_retry_task_0_05 ON sj_retry_task_0 (biz_no)
+CREATE INDEX idx_sj_retry_05 ON sj_retry (parent_id)
GO
-CREATE INDEX idx_sj_retry_task_0_06 ON sj_retry_task_0 (create_dt)
+CREATE INDEX idx_sj_retry_06 ON sj_retry (create_dt)
GO
EXEC sp_addextendedproperty
'MS_Description', N'主键',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'id'
GO
EXEC sp_addextendedproperty
'MS_Description', N'命名空间id',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'namespace_id'
GO
-EXEC sp_addextendedproperty
- 'MS_Description', N'同组下id唯一',
- 'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
- 'COLUMN', N'unique_id'
-GO
-
EXEC sp_addextendedproperty
'MS_Description', N'组名称',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'group_name'
GO
EXEC sp_addextendedproperty
'MS_Description', N'场景名称',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'scene_name'
GO
EXEC sp_addextendedproperty
'MS_Description', N'幂等id',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'idempotent_id'
GO
EXEC sp_addextendedproperty
'MS_Description', N'业务编号',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'biz_no'
GO
EXEC sp_addextendedproperty
'MS_Description', N'执行器名称',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'executor_name'
GO
EXEC sp_addextendedproperty
'MS_Description', N'执行方法参数',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'args_str'
GO
EXEC sp_addextendedproperty
'MS_Description', N'扩展字段',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'ext_attrs'
GO
EXEC sp_addextendedproperty
'MS_Description', N'下次触发时间',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'next_trigger_at'
GO
EXEC sp_addextendedproperty
'MS_Description', N'重试次数',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'retry_count'
GO
EXEC sp_addextendedproperty
'MS_Description', N'重试状态 0、重试中 1、成功 2、最大重试次数',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'retry_status'
GO
EXEC sp_addextendedproperty
'MS_Description', N'任务类型 1、重试数据 2、回调数据',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'task_type'
GO
+EXEC sp_addextendedproperty
+ 'MS_Description', N'bucket',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'sj_retry',
+ 'COLUMN', N'bucket_index'
+GO
+
+EXEC sp_addextendedproperty
+ 'MS_Description', N'父节点id',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'sj_retry',
+ 'COLUMN', N'parent_id'
+GO
+
+EXEC sp_addextendedproperty
+ 'MS_Description', N'逻辑删除',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'sj_retry',
+ 'COLUMN', N'deleted'
+GO
+
EXEC sp_addextendedproperty
'MS_Description', N'创建时间',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'create_dt'
GO
EXEC sp_addextendedproperty
'MS_Description', N'修改时间',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0',
+ 'TABLE', N'sj_retry',
'COLUMN', N'update_dt'
GO
EXEC sp_addextendedproperty
- 'MS_Description', N'任务表',
+ 'MS_Description', N'重试信息表',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_0'
+ 'TABLE', N'sj_retry'
GO
--- sj_retry_task_log
-CREATE TABLE sj_retry_task_log
+-- sj_retry_task
+CREATE TABLE sj_retry_task
(
- id bigint NOT NULL PRIMARY KEY IDENTITY,
- namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
- unique_id nvarchar(64) NOT NULL,
- group_name nvarchar(64) NOT NULL,
- scene_name nvarchar(64) NOT NULL,
- idempotent_id nvarchar(64) NOT NULL,
- biz_no nvarchar(64) NOT NULL DEFAULT '',
- executor_name nvarchar(512) NOT NULL DEFAULT '',
- args_str nvarchar(max) NOT NULL,
- ext_attrs nvarchar(max) NOT NULL,
- retry_status tinyint NOT NULL DEFAULT 0,
- task_type tinyint NOT NULL DEFAULT 1,
- create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
- update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
+ id bigint NOT NULL PRIMARY KEY IDENTITY,
+ namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
+ group_name nvarchar(64) NOT NULL,
+ scene_name nvarchar(64) NOT NULL,
+ retry_id bigint NOT NULL,
+ ext_attrs nvarchar(max) NOT NULL,
+ task_status tinyint NOT NULL DEFAULT 1,
+ task_type tinyint NOT NULL DEFAULT 1,
+ operation_reason tinyint NOT NULL DEFAULT 0,
+ client_info nvarchar(128) NULL DEFAULT NULL,
+ create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
)
GO
-CREATE INDEX idx_sj_retry_task_log_01 ON sj_retry_task_log (namespace_id, group_name, scene_name)
+CREATE INDEX idx_sj_retry_task_01 ON sj_retry_task (namespace_id, group_name, scene_name)
GO
-CREATE INDEX idx_sj_retry_task_log_02 ON sj_retry_task_log (retry_status)
+CREATE INDEX idx_sj_retry_task_02 ON sj_retry_task (task_status)
GO
-CREATE INDEX idx_sj_retry_task_log_03 ON sj_retry_task_log (idempotent_id)
+CREATE INDEX idx_sj_retry_task_03 ON sj_retry_task (create_dt)
GO
-CREATE INDEX idx_sj_retry_task_log_04 ON sj_retry_task_log (unique_id)
-GO
-CREATE INDEX idx_sj_retry_task_log_05 ON sj_retry_task_log (biz_no)
-GO
-CREATE INDEX idx_sj_retry_task_log_06 ON sj_retry_task_log (create_dt)
+CREATE INDEX idx_sj_retry_task_04 ON sj_retry_task (retry_id)
GO
EXEC sp_addextendedproperty
'MS_Description', N'主键',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
+ 'TABLE', N'sj_retry_task',
'COLUMN', N'id'
GO
EXEC sp_addextendedproperty
'MS_Description', N'命名空间id',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
+ 'TABLE', N'sj_retry_task',
'COLUMN', N'namespace_id'
GO
-EXEC sp_addextendedproperty
- 'MS_Description', N'同组下id唯一',
- 'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
- 'COLUMN', N'unique_id'
-GO
-
EXEC sp_addextendedproperty
'MS_Description', N'组名称',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
+ 'TABLE', N'sj_retry_task',
'COLUMN', N'group_name'
GO
EXEC sp_addextendedproperty
'MS_Description', N'场景名称',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
+ 'TABLE', N'sj_retry_task',
'COLUMN', N'scene_name'
GO
EXEC sp_addextendedproperty
- 'MS_Description', N'幂等id',
+ 'MS_Description', N'重试信息Id',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
- 'COLUMN', N'idempotent_id'
-GO
-
-EXEC sp_addextendedproperty
- 'MS_Description', N'业务编号',
- 'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
- 'COLUMN', N'biz_no'
-GO
-
-EXEC sp_addextendedproperty
- 'MS_Description', N'执行器名称',
- 'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
- 'COLUMN', N'executor_name'
-GO
-
-EXEC sp_addextendedproperty
- 'MS_Description', N'执行方法参数',
- 'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
- 'COLUMN', N'args_str'
+ 'TABLE', N'sj_retry_task',
+ 'COLUMN', N'retry_id'
GO
EXEC sp_addextendedproperty
'MS_Description', N'扩展字段',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
+ 'TABLE', N'sj_retry_task',
'COLUMN', N'ext_attrs'
GO
EXEC sp_addextendedproperty
- 'MS_Description', N'重试状态 0、重试中 1、成功 2、最大次数',
+ 'MS_Description', N'重试状态',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
- 'COLUMN', N'retry_status'
+ 'TABLE', N'sj_retry_task',
+ 'COLUMN', N'task_status'
GO
EXEC sp_addextendedproperty
'MS_Description', N'任务类型 1、重试数据 2、回调数据',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
+ 'TABLE', N'sj_retry_task',
'COLUMN', N'task_type'
GO
+EXEC sp_addextendedproperty
+ 'MS_Description', N'操作原因',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'sj_retry_task',
+ 'COLUMN', N'operation_reason'
+GO
+
+EXEC sp_addextendedproperty
+ 'MS_Description', N'客户端地址 clientId#ip:port',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'sj_retry_task',
+ 'COLUMN', N'client_info'
+GO
+
EXEC sp_addextendedproperty
'MS_Description', N'创建时间',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
+ 'TABLE', N'sj_retry_task',
'COLUMN', N'create_dt'
GO
EXEC sp_addextendedproperty
'MS_Description', N'修改时间',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log',
+ 'TABLE', N'sj_retry_task',
'COLUMN', N'update_dt'
GO
EXEC sp_addextendedproperty
- 'MS_Description', N'任务日志基础信息表',
+ 'MS_Description', N'重试任务表',
'SCHEMA', N'dbo',
- 'TABLE', N'sj_retry_task_log'
+ 'TABLE', N'sj_retry_task'
GO
-- sj_retry_task_log_message
CREATE TABLE sj_retry_task_log_message
(
- id bigint NOT NULL PRIMARY KEY IDENTITY,
- namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
- group_name nvarchar(64) NOT NULL,
- unique_id nvarchar(64) NOT NULL,
- message nvarchar(max) NOT NULL,
- log_num int NOT NULL DEFAULT 1,
- real_time bigint NOT NULL DEFAULT 0,
- create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
+ id bigint NOT NULL PRIMARY KEY IDENTITY,
+ namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
+ group_name nvarchar(64) NOT NULL,
+ retry_id bigint NOT NULL,
+ retry_task_id bigint NOT NULL,
+ message nvarchar(max) NOT NULL,
+ log_num int NOT NULL DEFAULT 1,
+ real_time bigint NOT NULL DEFAULT 0,
+ create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
)
GO
-CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id)
+CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, retry_task_id)
GO
CREATE INDEX idx_sj_retry_task_log_message_02 ON sj_retry_task_log_message (create_dt)
GO
@@ -866,10 +836,17 @@ EXEC sp_addextendedproperty
GO
EXEC sp_addextendedproperty
- 'MS_Description', N'同组下id唯一',
+ 'MS_Description', N'重试信息Id',
'SCHEMA', N'dbo',
'TABLE', N'sj_retry_task_log_message',
- 'COLUMN', N'unique_id'
+ 'COLUMN', N'retry_id'
+GO
+
+EXEC sp_addextendedproperty
+ 'MS_Description', N'重试任务Id',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'sj_retry_task_log_message',
+ 'COLUMN', N'retry_task_id'
GO
EXEC sp_addextendedproperty
@@ -909,21 +886,26 @@ GO
-- sj_retry_scene_config
CREATE TABLE sj_retry_scene_config
(
- id bigint NOT NULL PRIMARY KEY IDENTITY,
- namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
- scene_name nvarchar(64) NOT NULL,
- group_name nvarchar(64) NOT NULL,
- scene_status tinyint NOT NULL DEFAULT 0,
- max_retry_count int NOT NULL DEFAULT 5,
- back_off tinyint NOT NULL DEFAULT 1,
- trigger_interval nvarchar(16) NOT NULL DEFAULT '',
- notify_ids nvarchar(128) NOT NULL DEFAULT '',
- deadline_request bigint NOT NULL DEFAULT 60000,
- executor_timeout int NOT NULL DEFAULT 5,
- route_key tinyint NOT NULL DEFAULT 4,
- description nvarchar(256) NOT NULL DEFAULT '',
- create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
- update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
+ id bigint NOT NULL PRIMARY KEY IDENTITY,
+ namespace_id nvarchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
+ scene_name nvarchar(64) NOT NULL,
+ group_name nvarchar(64) NOT NULL,
+ scene_status tinyint NOT NULL DEFAULT 0,
+ max_retry_count int NOT NULL DEFAULT 5,
+ back_off tinyint NOT NULL DEFAULT 1,
+ trigger_interval nvarchar(16) NOT NULL DEFAULT '',
+ notify_ids nvarchar(128) NOT NULL DEFAULT '',
+ deadline_request bigint NOT NULL DEFAULT 60000,
+ executor_timeout int NOT NULL DEFAULT 5,
+ route_key tinyint NOT NULL DEFAULT 4,
+ block_strategy tinyint NOT NULL DEFAULT 1,
+ cb_status tinyint NOT NULL DEFAULT 0,
+ cb_trigger_type tinyint NOT NULL DEFAULT 1,
+ cb_max_count int NOT NULL DEFAULT 16,
+ cb_trigger_interval nvarchar(16) NOT NULL DEFAULT '',
+ description nvarchar(256) NOT NULL DEFAULT '',
+ create_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ update_dt datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP
)
GO
@@ -1014,6 +996,41 @@ EXEC sp_addextendedproperty
'COLUMN', N'route_key'
GO
+EXEC sp_addextendedproperty
+ 'MS_Description', N'阻塞策略 1、丢弃 2、覆盖 3、并行',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'sj_retry_scene_config',
+ 'COLUMN', N'block_strategy'
+GO
+
+EXEC sp_addextendedproperty
+ 'MS_Description', N'回调状态 0、不开启 1、开启',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'sj_retry_scene_config',
+ 'COLUMN', N'cb_status'
+GO
+
+EXEC sp_addextendedproperty
+ 'MS_Description', N'1、默认等级 2、固定间隔时间 3、CRON 表达式',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'sj_retry_scene_config',
+ 'COLUMN', N'cb_trigger_type'
+GO
+
+EXEC sp_addextendedproperty
+ 'MS_Description', N'回调的最大执行次数',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'sj_retry_scene_config',
+ 'COLUMN', N'cb_max_count'
+GO
+
+EXEC sp_addextendedproperty
+ 'MS_Description', N'回调的最大执行次数',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'sj_retry_scene_config',
+ 'COLUMN', N'cb_trigger_interval'
+GO
+
EXEC sp_addextendedproperty
'MS_Description', N'描述',
'SCHEMA', N'dbo',
@@ -1152,7 +1169,7 @@ GO
-- sj_distributed_lock
CREATE TABLE sj_distributed_lock
(
- name nvarchar(64) NOT NULL PRIMARY KEY,
+ name nvarchar(64) NOT NULL,
lock_until datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
locked_at datetime2 NOT NULL DEFAULT CURRENT_TIMESTAMP,
locked_by nvarchar(255) NOT NULL,
@@ -1539,7 +1556,7 @@ EXEC sp_addextendedproperty
GO
EXEC sp_addextendedproperty
- 'MS_Description', N'阻塞策略 1、丢弃 2、覆盖 3、并行',
+ 'MS_Description', N'阻塞策略 1、丢弃 2、覆盖 3、并行 4、恢复',
'SCHEMA', N'dbo',
'TABLE', N'sj_job',
'COLUMN', N'block_strategy'
@@ -1567,7 +1584,7 @@ EXEC sp_addextendedproperty
GO
EXEC sp_addextendedproperty
- 'MS_Description', N'重试间隔 ( s ) ',
+ 'MS_Description', N'重试间隔 ( s)',
'SCHEMA', N'dbo',
'TABLE', N'sj_job',
'COLUMN', N'retry_interval'
@@ -2121,7 +2138,7 @@ EXEC sp_addextendedproperty
GO
EXEC sp_addextendedproperty
- 'MS_Description', N'业务id ( job_id或workflow_id ) ',
+ 'MS_Description', N'业务id ( job_id或workflow_id)',
'SCHEMA', N'dbo',
'TABLE', N'sj_job_summary',
'COLUMN', N'business_id'