diff --git a/pom.xml b/pom.xml index 1ff7ed17..fecd53e5 100644 --- a/pom.xml +++ b/pom.xml @@ -32,7 +32,7 @@ 5.8.35 3.45.1 2.2.7 - 1.4.0 + 1.5.0 1.42.0 1.18.36 7.4 diff --git a/script/sql/oracle/oracle_ry_job.sql b/script/sql/oracle/oracle_ry_job.sql index 104aabba..c0055884 100644 --- a/script/sql/oracle/oracle_ry_job.sql +++ b/script/sql/oracle/oracle_ry_job.sql @@ -3,7 +3,7 @@ SnailJob Database Transfer Tool Source Server Type : MySQL Target Server Type : Oracle - Date: 2025-02-25 22:16:28 + Date: 2025-04-26 10:01:54 */ @@ -149,8 +149,9 @@ CREATE TABLE sj_retry_dead_letter id number GENERATED ALWAYS AS IDENTITY, namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL, group_name varchar2(64) NULL, + group_id number NOT NULL, scene_name varchar2(64) NULL, - idempotent_id varchar2(64) NULL, + scene_id number NOT NULL, idempotent_id varchar2(64) NULL, biz_no varchar2(64) DEFAULT '' NULL, executor_name varchar2(512) DEFAULT '' NULL, args_str clob NULL, @@ -169,7 +170,9 @@ CREATE INDEX idx_sj_retry_dead_letter_04 ON sj_retry_dead_letter (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.group_id IS '组Id'; COMMENT ON COLUMN sj_retry_dead_letter.scene_name IS '场景名称'; +COMMENT ON COLUMN sj_retry_dead_letter.scene_id IS '场景ID'; 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 '执行器名称'; @@ -184,8 +187,9 @@ CREATE TABLE sj_retry id number GENERATED ALWAYS AS IDENTITY, namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL, group_name varchar2(64) NULL, + group_id number NOT NULL, scene_name varchar2(64) NULL, - idempotent_id varchar2(64) NULL, + scene_id number NOT NULL, idempotent_id varchar2(64) NULL, biz_no varchar2(64) DEFAULT '' NULL, executor_name varchar2(512) DEFAULT '' NULL, args_str clob NULL, @@ -204,19 +208,21 @@ CREATE TABLE sj_retry ALTER TABLE sj_retry ADD CONSTRAINT pk_sj_retry PRIMARY KEY (id); -CREATE UNIQUE INDEX uk_sj_retry_01 ON sj_retry (namespace_id, group_name, task_type, idempotent_id, deleted); +CREATE UNIQUE INDEX uk_sj_retry_01 ON sj_retry (scene_id, task_type, idempotent_id, deleted); + +CREATE INDEX idx_sj_retry_01 ON sj_retry (biz_no); +CREATE INDEX idx_sj_retry_02 ON sj_retry (retry_status, bucket_index); +CREATE INDEX idx_sj_retry_03 ON sj_retry (parent_id); +CREATE INDEX idx_sj_retry_04 ON sj_retry (create_dt); +CREATE INDEX idx_sj_retry_05 ON sj_retry (idempotent_id); -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.id IS '主键'; COMMENT ON COLUMN sj_retry.namespace_id IS '命名空间id'; COMMENT ON COLUMN sj_retry.group_name IS '组名称'; +COMMENT ON COLUMN sj_retry.group_id IS '组Id'; COMMENT ON COLUMN sj_retry.scene_name IS '场景名称'; +COMMENT ON COLUMN sj_retry.scene_id IS '场景ID'; 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 '执行器名称'; @@ -395,7 +401,7 @@ COMMENT ON TABLE sj_server_node IS '服务器节点'; -- sj_distributed_lock CREATE TABLE sj_distributed_lock ( - name varchar2(64) NOT NULL, + name varchar2(64) NULL, lock_until timestamp(3) DEFAULT CURRENT_TIMESTAMP(3) NOT NULL, locked_at timestamp(3) DEFAULT CURRENT_TIMESTAMP(3) NOT NULL, locked_by varchar2(255) NULL, @@ -404,7 +410,7 @@ CREATE TABLE sj_distributed_lock ); ALTER TABLE sj_distributed_lock - ADD CONSTRAINT pk_sj_distributed_lock PRIMARY KEY (name); + ADD CONSTRAINT pk_sj_distributed_lock PRIMARY KEY (id); COMMENT ON COLUMN sj_distributed_lock.name IS '锁名称'; COMMENT ON COLUMN sj_distributed_lock.lock_until IS '锁定时长'; diff --git a/script/sql/postgres/postgres_ry_job.sql b/script/sql/postgres/postgres_ry_job.sql index 8b682dfe..10612e65 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: 2025-02-25 22:15:32 + Date: 2025-04-26 09:56:45 */ @@ -136,7 +136,9 @@ CREATE TABLE sj_retry_dead_letter id bigserial PRIMARY KEY, namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', group_name varchar(64) NOT NULL, + group_id bigint NOT NULL, scene_name varchar(64) NOT NULL, + scene_id bigint NOT NULL, idempotent_id varchar(64) NOT NULL, biz_no varchar(64) NOT NULL DEFAULT '', executor_name varchar(512) NOT NULL DEFAULT '', @@ -153,7 +155,9 @@ CREATE INDEX idx_sj_retry_dead_letter_04 ON sj_retry_dead_letter (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.group_id IS '组Id'; COMMENT ON COLUMN sj_retry_dead_letter.scene_name IS '场景名称'; +COMMENT ON COLUMN sj_retry_dead_letter.scene_id IS '场景ID'; 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 '执行器名称'; @@ -168,7 +172,9 @@ CREATE TABLE sj_retry id bigserial PRIMARY KEY, namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', group_name varchar(64) NOT NULL, + group_id bigint NOT NULL, scene_name varchar(64) NOT NULL, + scene_id bigint NOT NULL, idempotent_id varchar(64) NOT NULL, biz_no varchar(64) NOT NULL DEFAULT '', executor_name varchar(512) NOT NULL DEFAULT '', @@ -185,19 +191,21 @@ CREATE TABLE sj_retry update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE UNIQUE INDEX uk_sj_retry_01 ON sj_retry (namespace_id, group_name, task_type, idempotent_id, deleted); +CREATE UNIQUE INDEX uk_sj_retry_01 ON sj_retry (scene_id, task_type, idempotent_id, deleted); + +CREATE INDEX idx_sj_retry_01 ON sj_retry (biz_no); +CREATE INDEX idx_sj_retry_02 ON sj_retry (retry_status, bucket_index); +CREATE INDEX idx_sj_retry_03 ON sj_retry (parent_id); +CREATE INDEX idx_sj_retry_04 ON sj_retry (create_dt); +CREATE INDEX idx_sj_retry_05 ON sj_retry (idempotent_id); -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.id IS '主键'; COMMENT ON COLUMN sj_retry.namespace_id IS '命名空间id'; COMMENT ON COLUMN sj_retry.group_name IS '组名称'; +COMMENT ON COLUMN sj_retry.group_id IS '组Id'; COMMENT ON COLUMN sj_retry.scene_name IS '场景名称'; +COMMENT ON COLUMN sj_retry.scene_id IS '场景ID'; 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 '执行器名称'; diff --git a/script/sql/ry-job.sql b/script/sql/ry-job.sql index 3577d661..dd86deb4 100644 --- a/script/sql/ry-job.sql +++ b/script/sql/ry-job.sql @@ -84,7 +84,9 @@ 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', `group_name` varchar(64) NOT NULL COMMENT '组名称', + `group_id` bigint(20) NOT NULL COMMENT '组Id', `scene_name` varchar(64) NOT NULL COMMENT '场景名称', + `scene_id` bigint(20) NOT NULL COMMENT '场景ID', `idempotent_id` varchar(64) NOT NULL COMMENT '幂等id', `biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号', `executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称', @@ -105,7 +107,9 @@ CREATE TABLE `sj_retry` `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 '组名称', + `group_id` bigint(20) NOT NULL COMMENT '组Id', `scene_name` varchar(64) NOT NULL COMMENT '场景名称', + `scene_id` bigint(20) NOT NULL COMMENT '场景ID', `idempotent_id` varchar(64) NOT NULL COMMENT '幂等id', `biz_no` varchar(64) NOT NULL DEFAULT '' COMMENT '业务编号', `executor_name` varchar(512) NOT NULL DEFAULT '' COMMENT '执行器名称', @@ -121,13 +125,12 @@ CREATE TABLE `sj_retry` `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_retry_status` (`namespace_id`, `group_name`, `retry_status`), - KEY `idx_idempotent_id` (`idempotent_id`), KEY `idx_biz_no` (`biz_no`), + KEY `idx_idempotent_id` (`idempotent_id`), + KEY `idx_retry_status_bucket_index` (`retry_status`, `bucket_index`), KEY `idx_parent_id` (`parent_id`), KEY `idx_create_dt` (`create_dt`), - UNIQUE KEY `uk_name_task_type_idempotent_id_deleted` (`namespace_id`, `group_name`, `task_type`, `idempotent_id`, `deleted`) + UNIQUE KEY `uk_scene_tasktype_idempotentid_deleted` (`scene_id`, `task_type`, `idempotent_id`, `deleted`) ) ENGINE = InnoDB AUTO_INCREMENT = 0 DEFAULT CHARSET = utf8mb4 COMMENT ='重试信息表';