Преглед на файлове

!564 升级SnailJob版本到1.1.0
Merge pull request !564 from dhb52/dev

疯狂的狮子Li преди 9 месеца
родител
ревизия
d0e7eb8409
променени са 5 файла, в които са добавени 106 реда и са изтрити 31 реда
  1. 1 1
      pom.xml
  2. 18 7
      script/sql/oracle/snail_job_oracle.sql
  3. 17 6
      script/sql/postgres/snail_job_postgre.sql
  4. 11 6
      script/sql/snail_job.sql
  5. 59 11
      script/sql/sqlserver/snail_job_sqlserver.sql

+ 1 - 1
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>

+ 18 - 7
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 @@ CREATE INDEX idx_sj_notify_recipient_01 ON sj_notify_recipient (namespace_id);
 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 @@ COMMENT ON TABLE sj_server_node IS '服务器节点';
 -- 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 @@ CREATE TABLE sj_distributed_lock
 );
 
 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 @@ CREATE TABLE sj_job_task
     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.task_batch_id IS '调度任务id';
 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 @@ CREATE TABLE sj_workflow
     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.block_strategy IS '阻塞策略 1、丢弃 2、覆
 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 @@ CREATE TABLE sj_workflow_task_batch
     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.workflow_id IS '工作流任务id';
 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 '工作流批次';
-

+ 17 - 6
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 @@ CREATE INDEX idx_sj_notify_recipient_01 ON sj_notify_recipient (namespace_id);
 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 @@ COMMENT ON TABLE sj_server_node IS '服务器节点';
 -- 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 @@ CREATE TABLE sj_distributed_lock
     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 @@ CREATE TABLE sj_job_task
     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.task_batch_id IS '调度任务id';
 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 @@ CREATE TABLE sj_workflow
     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.block_strategy IS '阻塞策略 1、丢弃 2、覆
 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 @@ CREATE TABLE sj_workflow_task_batch
     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.workflow_id IS '工作流任务id';
 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 '工作流批次';
-

+ 11 - 6
script/sql/snail_job.sql

@@ -68,7 +68,7 @@ CREATE TABLE `sj_notify_recipient`
     `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_server_node`
 
 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 @@ CREATE TABLE `sj_job_task`
     `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 @@ CREATE TABLE `sj_workflow`
     `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 @@ CREATE TABLE `sj_workflow_task_batch`
     `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 '修改时间',

+ 59 - 11
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 @@ EXEC sp_addextendedproperty
 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,8 +1142,7 @@ GO
 -- 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,
@@ -1152,13 +1151,6 @@ CREATE TABLE sj_distributed_lock
 )
 GO
 
-EXEC sp_addextendedproperty
-     'MS_Description', N'主键',
-     'SCHEMA', N'dbo',
-     'TABLE', N'sj_distributed_lock',
-     'COLUMN', N'id'
-GO
-
 EXEC sp_addextendedproperty
      'MS_Description', N'锁名称',
      'SCHEMA', N'dbo',
@@ -1745,7 +1737,11 @@ CREATE TABLE sj_job_task
     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,
@@ -1818,6 +1814,27 @@ EXEC sp_addextendedproperty
      'COLUMN', N'retry_count'
 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',
@@ -1825,6 +1842,13 @@ EXEC sp_addextendedproperty
      '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
      'MS_Description', N'执行结果',
      'SCHEMA', N'dbo',
@@ -2281,6 +2305,7 @@ CREATE TABLE sj_workflow
     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 '',
@@ -2379,6 +2404,13 @@ EXEC sp_addextendedproperty
      '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
      'MS_Description', N'bucket',
      'SCHEMA', N'dbo',
@@ -2590,8 +2622,10 @@ CREATE TABLE sj_workflow_task_batch
     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
@@ -2654,6 +2688,13 @@ EXEC sp_addextendedproperty
      'COLUMN', N'flow_info'
 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',
@@ -2668,6 +2709,13 @@ EXEC sp_addextendedproperty
      'COLUMN', N'ext_attrs'
 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',