From 77a7a8f30ed85f15766ea3d13aaa95e53986f972 Mon Sep 17 00:00:00 2001
From: dhb52 <dhb52@126.com>
Date: 星期一, 15 七月 2024 18:16:43 +0800
Subject: [PATCH] chore: 升级SnailJob版本到1.1.0

---
 script/sql/snail_job.sql                     |   17 +++--
 script/sql/postgres/snail_job_postgre.sql    |   23 +++++--
 pom.xml                                      |    2 
 script/sql/oracle/snail_job_oracle.sql       |   25 ++++++--
 script/sql/sqlserver/snail_job_sqlserver.sql |   70 +++++++++++++++++++---
 5 files changed, 106 insertions(+), 31 deletions(-)

diff --git a/pom.xml b/pom.xml
index 7094419..74b0b9d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -34,7 +34,7 @@
         <lock4j.version>2.2.7</lock4j.version>
         <dynamic-ds.version>4.3.1</dynamic-ds.version>
         <alibaba-ttl.version>2.14.4</alibaba-ttl.version>
-        <snailjob.version>1.0.1</snailjob.version>
+        <snailjob.version>1.1.0</snailjob.version>
         <mapstruct-plus.version>1.3.6</mapstruct-plus.version>
         <mapstruct-plus.lombok.version>0.2.0</mapstruct-plus.lombok.version>
         <lombok.version>1.18.32</lombok.version>
diff --git a/script/sql/oracle/snail_job_oracle.sql b/script/sql/oracle/snail_job_oracle.sql
index 19aa07e..ce59b47 100644
--- a/script/sql/oracle/snail_job_oracle.sql
+++ b/script/sql/oracle/snail_job_oracle.sql
@@ -2,7 +2,7 @@
  SnailJob Database Transfer Tool
  Source Server Type    : MySQL
  Target Server Type    : Oracle
- Date: 2024-05-14 23:36:38
+ Date: 2024-07-06 12:49:36
 */
 
 
@@ -136,7 +136,7 @@
 COMMENT ON COLUMN sj_notify_recipient.id IS '涓婚敭';
 COMMENT ON COLUMN sj_notify_recipient.namespace_id IS '鍛藉悕绌洪棿id';
 COMMENT ON COLUMN sj_notify_recipient.recipient_name IS '鎺ユ敹浜哄悕绉�';
-COMMENT ON COLUMN sj_notify_recipient.notify_type IS '閫氱煡绫诲瀷 1銆侀拤閽� 2銆侀偖浠� 3銆佷紒涓氬井淇� 4 椋炰功';
+COMMENT ON COLUMN sj_notify_recipient.notify_type IS '閫氱煡绫诲瀷 1銆侀拤閽� 2銆侀偖浠� 3銆佷紒涓氬井淇� 4 椋炰功 5 webhook';
 COMMENT ON COLUMN sj_notify_recipient.notify_attribute IS '閰嶇疆灞炴��';
 COMMENT ON COLUMN sj_notify_recipient.description IS '鎻忚堪';
 COMMENT ON COLUMN sj_notify_recipient.create_dt IS '鍒涘缓鏃堕棿';
@@ -389,8 +389,7 @@
 -- sj_distributed_lock
 CREATE TABLE sj_distributed_lock
 (
-    id         number GENERATED ALWAYS AS IDENTITY,
-    name       varchar2(64)                              NULL,
+    name       varchar2(64)                              NOT 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,
@@ -399,9 +398,8 @@
 );
 
 ALTER TABLE sj_distributed_lock
-    ADD CONSTRAINT pk_sj_distributed_lock PRIMARY KEY (id);
+    ADD CONSTRAINT pk_sj_distributed_lock PRIMARY KEY (name);
 
-COMMENT ON COLUMN sj_distributed_lock.id IS '涓婚敭';
 COMMENT ON COLUMN sj_distributed_lock.name IS '閿佸悕绉�';
 COMMENT ON COLUMN sj_distributed_lock.lock_until IS '閿佸畾鏃堕暱';
 COMMENT ON COLUMN sj_distributed_lock.locked_at IS '閿佸畾鏃堕棿';
@@ -598,7 +596,11 @@
     parent_id      number        DEFAULT 0                                  NOT NULL,
     task_status    smallint      DEFAULT 0                                  NOT NULL,
     retry_count    number        DEFAULT 0                                  NOT NULL,
+    mr_stage       smallint      DEFAULT NULL                               NULL,
+    leaf           smallint      DEFAULT '1'                                NOT NULL,
+    task_name      varchar2(255) DEFAULT ''                                 NULL,
     client_info    varchar2(128) DEFAULT NULL                               NULL,
+    wf_context     clob          DEFAULT NULL                               NULL,
     result_message clob                                                     NULL,
     args_str       clob          DEFAULT NULL                               NULL,
     args_type      smallint      DEFAULT 1                                  NOT NULL,
@@ -622,7 +624,11 @@
 COMMENT ON COLUMN sj_job_task.parent_id IS '鐖舵墽琛屽櫒id';
 COMMENT ON COLUMN sj_job_task.task_status IS '鎵ц鐨勭姸鎬� 0銆佸け璐� 1銆佹垚鍔�';
 COMMENT ON COLUMN sj_job_task.retry_count IS '閲嶈瘯娆℃暟';
+COMMENT ON COLUMN sj_job_task.mr_stage IS '鍔ㄦ�佸垎鐗囨墍澶勯樁娈� 1:map 2:reduce 3:mergeReduce';
+COMMENT ON COLUMN sj_job_task.leaf IS '鍙跺瓙鑺傜偣';
+COMMENT ON COLUMN sj_job_task.task_name IS '浠诲姟鍚嶇О';
 COMMENT ON COLUMN sj_job_task.client_info IS '瀹㈡埛绔湴鍧� clientId#ip:port';
+COMMENT ON COLUMN sj_job_task.wf_context IS '宸ヤ綔娴佸叏灞�涓婁笅鏂�';
 COMMENT ON COLUMN sj_job_task.result_message IS '鎵ц缁撴灉';
 COMMENT ON COLUMN sj_job_task.args_str IS '鎵ц鏂规硶鍙傛暟';
 COMMENT ON COLUMN sj_job_task.args_type IS '鍙傛暟绫诲瀷 ';
@@ -773,6 +779,7 @@
     executor_timeout number        DEFAULT 0                                  NOT NULL,
     description      varchar2(256) DEFAULT ''                                 NULL,
     flow_info        clob          DEFAULT NULL                               NULL,
+    wf_context       clob          DEFAULT NULL                               NULL,
     bucket_index     number        DEFAULT 0                                  NOT NULL,
     version          number                                                   NOT NULL,
     ext_attrs        varchar2(256) DEFAULT ''                                 NULL,
@@ -799,6 +806,7 @@
 COMMENT ON COLUMN sj_workflow.executor_timeout IS '浠诲姟鎵ц瓒呮椂鏃堕棿锛屽崟浣嶇';
 COMMENT ON COLUMN sj_workflow.description IS '鎻忚堪';
 COMMENT ON COLUMN sj_workflow.flow_info IS '娴佺▼淇℃伅';
+COMMENT ON COLUMN sj_workflow.wf_context IS '涓婁笅鏂�';
 COMMENT ON COLUMN sj_workflow.bucket_index IS 'bucket';
 COMMENT ON COLUMN sj_workflow.version IS '鐗堟湰鍙�';
 COMMENT ON COLUMN sj_workflow.ext_attrs IS '鎵╁睍瀛楁';
@@ -864,8 +872,10 @@
     task_batch_status smallint      DEFAULT 0                                  NOT NULL,
     operation_reason  smallint      DEFAULT 0                                  NOT NULL,
     flow_info         clob          DEFAULT NULL                               NULL,
+    wf_context        clob          DEFAULT NULL                               NULL,
     execution_at      number        DEFAULT 0                                  NOT NULL,
     ext_attrs         varchar2(256) DEFAULT ''                                 NULL,
+    version           number        DEFAULT 1                                  NOT NULL,
     deleted           smallint      DEFAULT 0                                  NOT NULL,
     create_dt         date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
     update_dt         date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
@@ -885,10 +895,11 @@
 COMMENT ON COLUMN sj_workflow_task_batch.task_batch_status IS '浠诲姟鎵规鐘舵�� 0銆佸け璐� 1銆佹垚鍔�';
 COMMENT ON COLUMN sj_workflow_task_batch.operation_reason IS '鎿嶄綔鍘熷洜';
 COMMENT ON COLUMN sj_workflow_task_batch.flow_info IS '娴佺▼淇℃伅';
+COMMENT ON COLUMN sj_workflow_task_batch.wf_context IS '鍏ㄥ眬涓婁笅鏂�';
 COMMENT ON COLUMN sj_workflow_task_batch.execution_at IS '浠诲姟鎵ц鏃堕棿';
 COMMENT ON COLUMN sj_workflow_task_batch.ext_attrs IS '鎵╁睍瀛楁';
+COMMENT ON COLUMN sj_workflow_task_batch.version IS '鐗堟湰鍙�';
 COMMENT ON COLUMN sj_workflow_task_batch.deleted IS '閫昏緫鍒犻櫎 1銆佸垹闄�';
 COMMENT ON COLUMN sj_workflow_task_batch.create_dt IS '鍒涘缓鏃堕棿';
 COMMENT ON COLUMN sj_workflow_task_batch.update_dt IS '淇敼鏃堕棿';
 COMMENT ON TABLE sj_workflow_task_batch IS '宸ヤ綔娴佹壒娆�';
-
diff --git a/script/sql/postgres/snail_job_postgre.sql b/script/sql/postgres/snail_job_postgre.sql
index 30a871e..c8abc68 100644
--- a/script/sql/postgres/snail_job_postgre.sql
+++ b/script/sql/postgres/snail_job_postgre.sql
@@ -2,7 +2,7 @@
  SnailJob Database Transfer Tool
  Source Server Type    : MySQL
  Target Server Type    : PostgreSQL
- Date: 2024-05-13 22:49:34
+ Date: 2024-07-06 11:45:40
 */
 
 
@@ -124,7 +124,7 @@
 COMMENT ON COLUMN sj_notify_recipient.id IS '涓婚敭';
 COMMENT ON COLUMN sj_notify_recipient.namespace_id IS '鍛藉悕绌洪棿id';
 COMMENT ON COLUMN sj_notify_recipient.recipient_name IS '鎺ユ敹浜哄悕绉�';
-COMMENT ON COLUMN sj_notify_recipient.notify_type IS '閫氱煡绫诲瀷 1銆侀拤閽� 2銆侀偖浠� 3銆佷紒涓氬井淇� 4 椋炰功';
+COMMENT ON COLUMN sj_notify_recipient.notify_type IS '閫氱煡绫诲瀷 1銆侀拤閽� 2銆侀偖浠� 3銆佷紒涓氬井淇� 4 椋炰功 5 webhook';
 COMMENT ON COLUMN sj_notify_recipient.notify_attribute IS '閰嶇疆灞炴��';
 COMMENT ON COLUMN sj_notify_recipient.description IS '鎻忚堪';
 COMMENT ON COLUMN sj_notify_recipient.create_dt IS '鍒涘缓鏃堕棿';
@@ -359,8 +359,7 @@
 -- sj_distributed_lock
 CREATE TABLE sj_distributed_lock
 (
-    id         bigserial PRIMARY KEY,
-    name       varchar(64)  NOT NULL,
+    name       varchar(64)  PRIMARY KEY,
     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,
@@ -368,7 +367,6 @@
     update_dt  timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 );
 
-COMMENT ON COLUMN sj_distributed_lock.id IS '涓婚敭';
 COMMENT ON COLUMN sj_distributed_lock.name IS '閿佸悕绉�';
 COMMENT ON COLUMN sj_distributed_lock.lock_until IS '閿佸畾鏃堕暱';
 COMMENT ON COLUMN sj_distributed_lock.locked_at IS '閿佸畾鏃堕棿';
@@ -550,7 +548,11 @@
     parent_id      bigint       NOT NULL DEFAULT 0,
     task_status    smallint     NOT NULL DEFAULT 0,
     retry_count    int          NOT NULL DEFAULT 0,
+    mr_stage       smallint     NULL     DEFAULT NULL,
+    leaf           smallint     NOT NULL DEFAULT '1',
+    task_name      varchar(255) NOT NULL DEFAULT '',
     client_info    varchar(128) NULL     DEFAULT NULL,
+    wf_context     text         NULL     DEFAULT NULL,
     result_message text         NOT NULL,
     args_str       text         NULL     DEFAULT NULL,
     args_type      smallint     NOT NULL DEFAULT 1,
@@ -571,7 +573,11 @@
 COMMENT ON COLUMN sj_job_task.parent_id IS '鐖舵墽琛屽櫒id';
 COMMENT ON COLUMN sj_job_task.task_status IS '鎵ц鐨勭姸鎬� 0銆佸け璐� 1銆佹垚鍔�';
 COMMENT ON COLUMN sj_job_task.retry_count IS '閲嶈瘯娆℃暟';
+COMMENT ON COLUMN sj_job_task.mr_stage IS '鍔ㄦ�佸垎鐗囨墍澶勯樁娈� 1:map 2:reduce 3:mergeReduce';
+COMMENT ON COLUMN sj_job_task.leaf IS '鍙跺瓙鑺傜偣';
+COMMENT ON COLUMN sj_job_task.task_name IS '浠诲姟鍚嶇О';
 COMMENT ON COLUMN sj_job_task.client_info IS '瀹㈡埛绔湴鍧� clientId#ip:port';
+COMMENT ON COLUMN sj_job_task.wf_context IS '宸ヤ綔娴佸叏灞�涓婁笅鏂�';
 COMMENT ON COLUMN sj_job_task.result_message IS '鎵ц缁撴灉';
 COMMENT ON COLUMN sj_job_task.args_str IS '鎵ц鏂规硶鍙傛暟';
 COMMENT ON COLUMN sj_job_task.args_type IS '鍙傛暟绫诲瀷 ';
@@ -713,6 +719,7 @@
     executor_timeout int          NOT NULL DEFAULT 0,
     description      varchar(256) NOT NULL DEFAULT '',
     flow_info        text         NULL     DEFAULT NULL,
+    wf_context       text         NULL     DEFAULT NULL,
     bucket_index     int          NOT NULL DEFAULT 0,
     version          int          NOT NULL,
     ext_attrs        varchar(256) NULL     DEFAULT '',
@@ -736,6 +743,7 @@
 COMMENT ON COLUMN sj_workflow.executor_timeout IS '浠诲姟鎵ц瓒呮椂鏃堕棿锛屽崟浣嶇';
 COMMENT ON COLUMN sj_workflow.description IS '鎻忚堪';
 COMMENT ON COLUMN sj_workflow.flow_info IS '娴佺▼淇℃伅';
+COMMENT ON COLUMN sj_workflow.wf_context IS '涓婁笅鏂�';
 COMMENT ON COLUMN sj_workflow.bucket_index IS 'bucket';
 COMMENT ON COLUMN sj_workflow.version IS '鐗堟湰鍙�';
 COMMENT ON COLUMN sj_workflow.ext_attrs IS '鎵╁睍瀛楁';
@@ -798,8 +806,10 @@
     task_batch_status smallint     NOT NULL DEFAULT 0,
     operation_reason  smallint     NOT NULL DEFAULT 0,
     flow_info         text         NULL     DEFAULT NULL,
+    wf_context        text         NULL     DEFAULT NULL,
     execution_at      bigint       NOT NULL DEFAULT 0,
     ext_attrs         varchar(256) NULL     DEFAULT '',
+    version           int          NOT NULL DEFAULT 1,
     deleted           smallint     NOT NULL DEFAULT 0,
     create_dt         timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
     update_dt         timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
@@ -816,10 +826,11 @@
 COMMENT ON COLUMN sj_workflow_task_batch.task_batch_status IS '浠诲姟鎵规鐘舵�� 0銆佸け璐� 1銆佹垚鍔�';
 COMMENT ON COLUMN sj_workflow_task_batch.operation_reason IS '鎿嶄綔鍘熷洜';
 COMMENT ON COLUMN sj_workflow_task_batch.flow_info IS '娴佺▼淇℃伅';
+COMMENT ON COLUMN sj_workflow_task_batch.wf_context IS '鍏ㄥ眬涓婁笅鏂�';
 COMMENT ON COLUMN sj_workflow_task_batch.execution_at IS '浠诲姟鎵ц鏃堕棿';
 COMMENT ON COLUMN sj_workflow_task_batch.ext_attrs IS '鎵╁睍瀛楁';
+COMMENT ON COLUMN sj_workflow_task_batch.version IS '鐗堟湰鍙�';
 COMMENT ON COLUMN sj_workflow_task_batch.deleted IS '閫昏緫鍒犻櫎 1銆佸垹闄�';
 COMMENT ON COLUMN sj_workflow_task_batch.create_dt IS '鍒涘缓鏃堕棿';
 COMMENT ON COLUMN sj_workflow_task_batch.update_dt IS '淇敼鏃堕棿';
 COMMENT ON TABLE sj_workflow_task_batch IS '宸ヤ綔娴佹壒娆�';
-
diff --git a/script/sql/snail_job.sql b/script/sql/snail_job.sql
index ce93e11..c3aa760 100644
--- a/script/sql/snail_job.sql
+++ b/script/sql/snail_job.sql
@@ -68,7 +68,7 @@
     `id`               bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '涓婚敭',
     `namespace_id`     varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '鍛藉悕绌洪棿id',
     `recipient_name`   varchar(64)         NOT NULL COMMENT '鎺ユ敹浜哄悕绉�',
-    `notify_type`      tinyint(4)          NOT NULL DEFAULT 0 COMMENT '閫氱煡绫诲瀷 1銆侀拤閽� 2銆侀偖浠� 3銆佷紒涓氬井淇� 4 椋炰功',
+    `notify_type`      tinyint(4)          NOT NULL DEFAULT 0 COMMENT '閫氱煡绫诲瀷 1銆侀拤閽� 2銆侀偖浠� 3銆佷紒涓氬井淇� 4 椋炰功 5 webhook',
     `notify_attribute` varchar(512)        NOT NULL COMMENT '閰嶇疆灞炴��',
     `description`      varchar(256)        NOT NULL DEFAULT '' COMMENT '鎻忚堪',
     `create_dt`        datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '鍒涘缓鏃堕棿',
@@ -222,15 +222,13 @@
 
 CREATE TABLE `sj_distributed_lock`
 (
-    `id`         bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '涓婚敭',
     `name`       varchar(64)         NOT NULL COMMENT '閿佸悕绉�',
     `lock_until` timestamp(3)        NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3) COMMENT '閿佸畾鏃堕暱',
     `locked_at`  timestamp(3)        NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT '閿佸畾鏃堕棿',
     `locked_by`  varchar(255)        NOT NULL COMMENT '閿佸畾鑰�',
     `create_dt`  datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '鍒涘缓鏃堕棿',
     `update_dt`  datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '淇敼鏃堕棿',
-    PRIMARY KEY (`id`),
-    UNIQUE KEY `uk_name` (`name`)
+    PRIMARY KEY (`name`)
 ) ENGINE = InnoDB
   AUTO_INCREMENT = 0
   DEFAULT CHARSET = utf8mb4 COMMENT ='閿佸畾琛�';
@@ -345,12 +343,16 @@
     `job_id`         bigint(20)          NOT NULL COMMENT '浠诲姟淇℃伅id',
     `task_batch_id`  bigint(20)          NOT NULL COMMENT '璋冨害浠诲姟id',
     `parent_id`      bigint(20)          NOT NULL DEFAULT 0 COMMENT '鐖舵墽琛屽櫒id',
-    `task_status`    tinyint(4)          NOT NULL DEFAULT 0 COMMENT '鎵ц鐨勭姸鎬� 0銆佸け璐� 1銆佹垚鍔�',
+    `task_status`    tinyint             NOT NULL DEFAULT 0 COMMENT '鎵ц鐨勭姸鎬� 0銆佸け璐� 1銆佹垚鍔�',
     `retry_count`    int(11)             NOT NULL DEFAULT 0 COMMENT '閲嶈瘯娆℃暟',
+    `mr_stage`       tinyint                      DEFAULT NULL COMMENT '鍔ㄦ�佸垎鐗囨墍澶勯樁娈� 1:map 2:reduce 3:mergeReduce',
+    `leaf`           tinyint             NOT NULL DEFAULT '1' COMMENT '鍙跺瓙鑺傜偣',
+    `task_name`      varchar(255)        NOT NULL DEFAULT '' COMMENT '浠诲姟鍚嶇О',
     `client_info`    varchar(128)                 DEFAULT NULL COMMENT '瀹㈡埛绔湴鍧� clientId#ip:port',
+    `wf_context`     text                         DEFAULT NULL COMMENT '宸ヤ綔娴佸叏灞�涓婁笅鏂�',
     `result_message` text                NOT NULL COMMENT '鎵ц缁撴灉',
     `args_str`       text                         DEFAULT NULL COMMENT '鎵ц鏂规硶鍙傛暟',
-    `args_type`      tinyint(4)          NOT NULL DEFAULT 1 COMMENT '鍙傛暟绫诲瀷 ',
+    `args_type`      tinyint             NOT NULL DEFAULT 1 COMMENT '鍙傛暟绫诲瀷 ',
     `ext_attrs`      varchar(256)        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 '淇敼鏃堕棿',
@@ -447,6 +449,7 @@
     `executor_timeout` int(11)             NOT NULL DEFAULT 0 COMMENT '浠诲姟鎵ц瓒呮椂鏃堕棿锛屽崟浣嶇',
     `description`      varchar(256)        NOT NULL DEFAULT '' COMMENT '鎻忚堪',
     `flow_info`        text                         DEFAULT NULL COMMENT '娴佺▼淇℃伅',
+    `wf_context`       text                         DEFAULT NULL COMMENT '涓婁笅鏂�',
     `bucket_index`     int(11)             NOT NULL DEFAULT 0 COMMENT 'bucket',
     `version`          int(11)             NOT NULL COMMENT '鐗堟湰鍙�',
     `ext_attrs`        varchar(256)        NULL     DEFAULT '' COMMENT '鎵╁睍瀛楁',
@@ -495,8 +498,10 @@
     `task_batch_status` tinyint(4)          NOT NULL DEFAULT 0 COMMENT '浠诲姟鎵规鐘舵�� 0銆佸け璐� 1銆佹垚鍔�',
     `operation_reason`  tinyint(4)          NOT NULL DEFAULT 0 COMMENT '鎿嶄綔鍘熷洜',
     `flow_info`         text                         DEFAULT NULL COMMENT '娴佺▼淇℃伅',
+    `wf_context`        text                         DEFAULT NULL COMMENT '鍏ㄥ眬涓婁笅鏂�',
     `execution_at`      bigint(13)          NOT NULL DEFAULT 0 COMMENT '浠诲姟鎵ц鏃堕棿',
     `ext_attrs`         varchar(256)        NULL     DEFAULT '' COMMENT '鎵╁睍瀛楁',
+    `version`           int(11)              NOT NULL DEFAULT 1 COMMENT '鐗堟湰鍙�',
     `deleted`           tinyint(4)          NOT NULL DEFAULT 0 COMMENT '閫昏緫鍒犻櫎 1銆佸垹闄�',
     `create_dt`         datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '鍒涘缓鏃堕棿',
     `update_dt`         datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '淇敼鏃堕棿',
diff --git a/script/sql/sqlserver/snail_job_sqlserver.sql b/script/sql/sqlserver/snail_job_sqlserver.sql
index d6fa1ae..249842b 100644
--- a/script/sql/sqlserver/snail_job_sqlserver.sql
+++ b/script/sql/sqlserver/snail_job_sqlserver.sql
@@ -2,7 +2,7 @@
  SnailJob Database Transfer Tool
  Source Server Type    : MySQL
  Target Server Type    : Microsoft SQL Server
- Date: 2024-05-13 23:03:34
+ Date: 2024-07-06 12:55:47
 */
 
 
@@ -370,7 +370,7 @@
 GO
 
 EXEC sp_addextendedproperty
-     'MS_Description', N'閫氱煡绫诲瀷 1銆侀拤閽� 2銆侀偖浠� 3銆佷紒涓氬井淇� 4 椋炰功',
+     'MS_Description', N'閫氱煡绫诲瀷 1銆侀拤閽� 2銆侀偖浠� 3銆佷紒涓氬井淇� 4 椋炰功 5 webhook',
      'SCHEMA', N'dbo',
      'TABLE', N'sj_notify_recipient',
      'COLUMN', N'notify_type'
@@ -1142,21 +1142,13 @@
 -- sj_distributed_lock
 CREATE TABLE sj_distributed_lock
 (
-    id         bigint        NOT NULL PRIMARY KEY IDENTITY,
-    name       nvarchar(64)  NOT NULL,
+    name       nvarchar(64)  NOT NULL PRIMARY KEY,
     lock_until datetime2     NOT NULL DEFAULT CURRENT_TIMESTAMP,
     locked_at  datetime2     NOT NULL DEFAULT CURRENT_TIMESTAMP,
     locked_by  nvarchar(255) NOT NULL,
     create_dt  datetime2     NOT NULL DEFAULT CURRENT_TIMESTAMP,
     update_dt  datetime2     NOT NULL DEFAULT CURRENT_TIMESTAMP
 )
-GO
-
-EXEC sp_addextendedproperty
-     'MS_Description', N'涓婚敭',
-     'SCHEMA', N'dbo',
-     'TABLE', N'sj_distributed_lock',
-     'COLUMN', N'id'
 GO
 
 EXEC sp_addextendedproperty
@@ -1745,7 +1737,11 @@
     parent_id      bigint        NOT NULL DEFAULT 0,
     task_status    tinyint       NOT NULL DEFAULT 0,
     retry_count    int           NOT NULL DEFAULT 0,
+    mr_stage       tinyint       NULL     DEFAULT NULL,
+    leaf           tinyint       NOT NULL DEFAULT '1',
+    task_name      nvarchar(255) NOT NULL DEFAULT '',
     client_info    nvarchar(128) NULL     DEFAULT NULL,
+    wf_context     nvarchar(max) NULL     DEFAULT NULL,
     result_message nvarchar(max) NOT NULL,
     args_str       nvarchar(max) NULL     DEFAULT NULL,
     args_type      tinyint       NOT NULL DEFAULT 1,
@@ -1819,10 +1815,38 @@
 GO
 
 EXEC sp_addextendedproperty
+     'MS_Description', N'鍔ㄦ�佸垎鐗囨墍澶勯樁娈� 1:map 2:reduce 3:mergeReduce',
+     'SCHEMA', N'dbo',
+     'TABLE', N'sj_job_task',
+     'COLUMN', N'mr_stage'
+GO
+
+EXEC sp_addextendedproperty
+     'MS_Description', N'鍙跺瓙鑺傜偣',
+     'SCHEMA', N'dbo',
+     'TABLE', N'sj_job_task',
+     'COLUMN', N'leaf'
+GO
+
+EXEC sp_addextendedproperty
+     'MS_Description', N'浠诲姟鍚嶇О',
+     'SCHEMA', N'dbo',
+     'TABLE', N'sj_job_task',
+     'COLUMN', N'task_name'
+GO
+
+EXEC sp_addextendedproperty
      'MS_Description', N'瀹㈡埛绔湴鍧� clientId#ip:port',
      'SCHEMA', N'dbo',
      'TABLE', N'sj_job_task',
      'COLUMN', N'client_info'
+GO
+
+EXEC sp_addextendedproperty
+     'MS_Description', N'宸ヤ綔娴佸叏灞�涓婁笅鏂�',
+     'SCHEMA', N'dbo',
+     'TABLE', N'sj_job_task',
+     'COLUMN', N'wf_context'
 GO
 
 EXEC sp_addextendedproperty
@@ -2281,6 +2305,7 @@
     executor_timeout int           NOT NULL DEFAULT 0,
     description      nvarchar(256) NOT NULL DEFAULT '',
     flow_info        nvarchar(max) NULL     DEFAULT NULL,
+    wf_context       nvarchar(max) NULL     DEFAULT NULL,
     bucket_index     int           NOT NULL DEFAULT 0,
     version          int           NOT NULL,
     ext_attrs        nvarchar(256) NULL     DEFAULT '',
@@ -2377,6 +2402,13 @@
      'SCHEMA', N'dbo',
      'TABLE', N'sj_workflow',
      'COLUMN', N'flow_info'
+GO
+
+EXEC sp_addextendedproperty
+     'MS_Description', N'涓婁笅鏂�',
+     'SCHEMA', N'dbo',
+     'TABLE', N'sj_workflow',
+     'COLUMN', N'wf_context'
 GO
 
 EXEC sp_addextendedproperty
@@ -2590,8 +2622,10 @@
     task_batch_status tinyint       NOT NULL DEFAULT 0,
     operation_reason  tinyint       NOT NULL DEFAULT 0,
     flow_info         nvarchar(max) NULL     DEFAULT NULL,
+    wf_context        nvarchar(max) NULL     DEFAULT NULL,
     execution_at      bigint        NOT NULL DEFAULT 0,
     ext_attrs         nvarchar(256) NULL     DEFAULT '',
+    version           int           NOT NULL DEFAULT 1,
     deleted           tinyint       NOT NULL DEFAULT 0,
     create_dt         datetime2     NOT NULL DEFAULT CURRENT_TIMESTAMP,
     update_dt         datetime2     NOT NULL DEFAULT CURRENT_TIMESTAMP
@@ -2655,6 +2689,13 @@
 GO
 
 EXEC sp_addextendedproperty
+     'MS_Description', N'鍏ㄥ眬涓婁笅鏂�',
+     'SCHEMA', N'dbo',
+     'TABLE', N'sj_workflow_task_batch',
+     'COLUMN', N'wf_context'
+GO
+
+EXEC sp_addextendedproperty
      'MS_Description', N'浠诲姟鎵ц鏃堕棿',
      'SCHEMA', N'dbo',
      'TABLE', N'sj_workflow_task_batch',
@@ -2669,6 +2710,13 @@
 GO
 
 EXEC sp_addextendedproperty
+     'MS_Description', N'鐗堟湰鍙�',
+     'SCHEMA', N'dbo',
+     'TABLE', N'sj_workflow_task_batch',
+     'COLUMN', N'version'
+GO
+
+EXEC sp_addextendedproperty
      'MS_Description', N'閫昏緫鍒犻櫎 1銆佸垹闄�',
      'SCHEMA', N'dbo',
      'TABLE', N'sj_workflow_task_batch',

--
Gitblit v1.9.3