diff --git a/doc/sql/snail_job_postgre.sql b/doc/sql/snail_job_postgre.sql index c0ee797af..c5c3d5ab4 100644 --- a/doc/sql/snail_job_postgre.sql +++ b/doc/sql/snail_job_postgre.sql @@ -1,802 +1,821 @@ --- PostgreSQL DDL +/* + SnailJob Database Transfer Tool + Source Server Type : MySQL + Target Server Type : PostgreSQL + Date: 2024-05-13 22:49:34 +*/ -CREATE TABLE namespace + +-- sj_namespace +CREATE TABLE sj_namespace ( - id BIGSERIAL PRIMARY KEY, - name VARCHAR(64) NOT NULL, - unique_id VARCHAR(64) NOT NULL, - description VARCHAR(256) NOT NULL DEFAULT '', - create_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - update_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - deleted SMALLINT NOT NULL DEFAULT 0 + id bigserial PRIMARY KEY, + name varchar(64) NOT NULL, + unique_id varchar(64) NOT NULL, + description varchar(256) NOT NULL DEFAULT '', + deleted smallint NOT NULL DEFAULT 0, + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE UNIQUE INDEX uk_namespace_unique_id ON namespace (unique_id); +CREATE INDEX idx_sj_namespace_01 ON sj_namespace (name); -COMMENT ON COLUMN namespace.id IS '主键'; -COMMENT ON COLUMN namespace.name IS '名称'; -COMMENT ON COLUMN namespace.unique_id IS '唯一id'; -COMMENT ON COLUMN namespace.description IS '描述'; -COMMENT ON COLUMN namespace.create_dt IS '创建时间'; -COMMENT ON COLUMN namespace.update_dt IS '修改时间'; -COMMENT ON COLUMN namespace.deleted IS '逻辑删除 1、删除'; -COMMENT ON TABLE namespace IS '命名空间'; +COMMENT ON COLUMN sj_namespace.id IS '主键'; +COMMENT ON COLUMN sj_namespace.name IS '名称'; +COMMENT ON COLUMN sj_namespace.unique_id IS '唯一id'; +COMMENT ON COLUMN sj_namespace.description IS '描述'; +COMMENT ON COLUMN sj_namespace.deleted IS '逻辑删除 1、删除'; +COMMENT ON COLUMN sj_namespace.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_namespace.update_dt IS '修改时间'; +COMMENT ON TABLE sj_namespace IS '命名空间'; -INSERT INTO namespace (name, unique_id, create_dt, update_dt, deleted) -VALUES ('Default', '764d604ec6fc45f68cd92514c40e9e1a', now(), now(), 0); +INSERT INTO sj_namespace (id, name, unique_id, create_dt, update_dt, deleted) +VALUES (1, 'Default', '764d604ec6fc45f68cd92514c40e9e1a', now(), now(), 0); -CREATE TABLE group_config +-- sj_group_config +CREATE TABLE sj_group_config ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name VARCHAR(64) NOT NULL, - description VARCHAR(256) DEFAULT '', - token VARCHAR(64) DEFAULT 'ER_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', - group_status SMALLINT NOT NULL DEFAULT 0, - version INT NOT NULL, - 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 + id bigserial PRIMARY KEY, + namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', + group_name varchar(64) NOT NULL DEFAULT '', + description varchar(256) NOT NULL DEFAULT '', + token varchar(64) NOT NULL DEFAULT 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', + group_status smallint NOT NULL DEFAULT 0, + version int NOT NULL, + 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 ); -CREATE UNIQUE INDEX uk_namespace_id_group_name_group_config ON group_config (namespace_id, group_name); +CREATE UNIQUE INDEX uk_sj_group_config_01 ON sj_group_config (namespace_id, group_name); -COMMENT ON COLUMN group_config.id IS '主键'; -COMMENT ON COLUMN group_config.namespace_id IS '命名空间'; -COMMENT ON COLUMN group_config.group_name IS '组名称'; -COMMENT ON COLUMN group_config.description IS '组描述'; -COMMENT ON COLUMN group_config.token IS 'token'; -COMMENT ON COLUMN group_config.group_status IS '组状态 0、未启用 1、启用'; -COMMENT ON COLUMN group_config.version IS '版本号'; -COMMENT ON COLUMN group_config.group_partition IS '分区'; -COMMENT ON COLUMN group_config.id_generator_mode IS '唯一id生成模式 默认号段模式'; -COMMENT ON COLUMN group_config.init_scene IS '是否初始化场景 0:否 1:是'; -COMMENT ON COLUMN group_config.bucket_index IS 'bucket'; -COMMENT ON COLUMN group_config.create_dt IS '创建时间'; -COMMENT ON COLUMN group_config.update_dt IS '修改时间'; -COMMENT ON TABLE group_config IS '组配置'; +COMMENT ON COLUMN sj_group_config.id IS '主键'; +COMMENT ON COLUMN sj_group_config.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_group_config.group_name IS '组名称'; +COMMENT ON COLUMN sj_group_config.description IS '组描述'; +COMMENT ON COLUMN sj_group_config.token IS 'token'; +COMMENT ON COLUMN sj_group_config.group_status IS '组状态 0、未启用 1、启用'; +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 '组配置'; -CREATE TABLE notify_config +-- sj_notify_config +CREATE TABLE sj_notify_config ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name VARCHAR(64) NOT NULL, - scene_name VARCHAR(64) NOT NULL, - notify_status SMALLINT NOT NULL DEFAULT 0, - notify_type SMALLINT NOT NULL DEFAULT 0, - notify_attribute VARCHAR(512) NOT NULL, - notify_threshold INT NOT NULL DEFAULT 0, - notify_scene SMALLINT NOT NULL DEFAULT 0, - rate_limiter_status SMALLINT NOT NULL DEFAULT 0, - rate_limiter_threshold INT NOT NULL DEFAULT 0, - 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', + group_name varchar(64) NOT NULL, + business_id varchar(64) NOT NULL, + system_task_type smallint NOT NULL DEFAULT 3, + notify_status smallint NOT NULL DEFAULT 0, + recipient_ids varchar(128) NOT NULL, + notify_threshold int NOT NULL DEFAULT 0, + notify_scene smallint NOT NULL DEFAULT 0, + rate_limiter_status smallint NOT NULL DEFAULT 0, + rate_limiter_threshold int NOT NULL DEFAULT 0, + description varchar(256) NOT NULL DEFAULT '', + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE INDEX idx_namespace_id_group_name_notify_config ON notify_config (namespace_id, group_name); +CREATE INDEX idx_sj_notify_config_01 ON sj_notify_config (namespace_id, group_name, business_id); -COMMENT ON COLUMN notify_config.id IS '主键'; -COMMENT ON COLUMN notify_config.group_name IS '组名称'; -COMMENT ON COLUMN notify_config.namespace_id IS '命名空间id'; -COMMENT ON COLUMN notify_config.scene_name IS '场景名称'; -COMMENT ON COLUMN notify_config.notify_status IS '通知状态 0、未启用 1、启用'; -COMMENT ON COLUMN notify_config.notify_type IS '通知类型 1、钉钉 2、邮件 3、企业微信'; -COMMENT ON COLUMN notify_config.notify_attribute IS '配置属性'; -COMMENT ON COLUMN notify_config.notify_threshold IS '通知阈值'; -COMMENT ON COLUMN notify_config.notify_scene IS '通知场景'; -COMMENT ON COLUMN notify_config.rate_limiter_status IS '限流状态 0、未启用 1、启用'; -COMMENT ON COLUMN notify_config.rate_limiter_threshold IS '每秒限流阈值'; -COMMENT ON COLUMN notify_config.description IS '描述'; -COMMENT ON COLUMN notify_config.create_dt IS '创建时间'; -COMMENT ON COLUMN notify_config.update_dt IS '修改时间'; -COMMENT ON TABLE notify_config IS '通知配置'; +COMMENT ON COLUMN sj_notify_config.id IS '主键'; +COMMENT ON COLUMN sj_notify_config.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_notify_config.group_name IS '组名称'; +COMMENT ON COLUMN sj_notify_config.business_id IS '业务id ( job_id或workflow_id或scene_name ) '; +COMMENT ON COLUMN sj_notify_config.system_task_type IS '任务类型 1. 重试任务 2. 重试回调 3、JOB任务 4、WORKFLOW任务'; +COMMENT ON COLUMN sj_notify_config.notify_status IS '通知状态 0、未启用 1、启用'; +COMMENT ON COLUMN sj_notify_config.recipient_ids IS '接收人id列表'; +COMMENT ON COLUMN sj_notify_config.notify_threshold IS '通知阈值'; +COMMENT ON COLUMN sj_notify_config.notify_scene IS '通知场景'; +COMMENT ON COLUMN sj_notify_config.rate_limiter_status IS '限流状态 0、未启用 1、启用'; +COMMENT ON COLUMN sj_notify_config.rate_limiter_threshold IS '每秒限流阈值'; +COMMENT ON COLUMN sj_notify_config.description IS '描述'; +COMMENT ON COLUMN sj_notify_config.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_notify_config.update_dt IS '修改时间'; +COMMENT ON TABLE sj_notify_config IS '通知配置'; - -CREATE TABLE retry_dead_letter_0 +-- sj_notify_recipient +CREATE TABLE sj_notify_recipient ( - id BIGSERIAL PRIMARY KEY, - unique_id VARCHAR(64) NOT NULL, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - 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, - task_type SMALLINT NOT NULL DEFAULT 1, - create_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP + id bigserial PRIMARY KEY, + namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', + recipient_name varchar(64) NOT NULL, + notify_type smallint NOT NULL DEFAULT 0, + notify_attribute varchar(512) NOT NULL, + 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_namespace_id_group_name_unique_id_retry_dead_letter ON retry_dead_letter_0 (namespace_id, group_name, unique_id); -CREATE INDEX idx_namespace_id_group_name_scene_name_retry_dead_letter ON retry_dead_letter_0 (namespace_id, group_name, scene_name); -CREATE INDEX idx_idempotent_id_retry_dead_letter ON retry_dead_letter_0 (idempotent_id); -CREATE INDEX idx_biz_no_retry_dead_letter ON retry_dead_letter_0 (biz_no); -CREATE INDEX idx_create_dt_retry_dead_letter ON retry_dead_letter_0 (create_dt); +CREATE INDEX idx_sj_notify_recipient_01 ON sj_notify_recipient (namespace_id); -COMMENT ON COLUMN retry_dead_letter_0.id IS '主键'; -COMMENT ON COLUMN retry_dead_letter_0.unique_id IS '同组下id唯一'; -COMMENT ON COLUMN retry_dead_letter_0.namespace_id IS '命名空间id'; -COMMENT ON COLUMN retry_dead_letter_0.group_name IS '组名称'; -COMMENT ON COLUMN retry_dead_letter_0.scene_name IS '场景名称'; -COMMENT ON COLUMN retry_dead_letter_0.idempotent_id IS '幂等id'; -COMMENT ON COLUMN retry_dead_letter_0.biz_no IS '业务编号'; -COMMENT ON COLUMN retry_dead_letter_0.executor_name IS '执行器名称'; -COMMENT ON COLUMN retry_dead_letter_0.args_str IS '执行方法参数'; -COMMENT ON COLUMN retry_dead_letter_0.ext_attrs IS '扩展字段'; -COMMENT ON COLUMN retry_dead_letter_0.task_type IS '任务类型 1、重试数据 2、回调数据'; -COMMENT ON COLUMN retry_dead_letter_0.create_dt IS '创建时间'; -COMMENT ON TABLE retry_dead_letter_0 IS '死信队列表'; +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_attribute IS '配置属性'; +COMMENT ON COLUMN sj_notify_recipient.description IS '描述'; +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 '告警通知接收人'; -CREATE TABLE retry_task_0 +-- sj_retry_dead_letter_0 +CREATE TABLE sj_retry_dead_letter_0 ( - id BIGSERIAL PRIMARY KEY, - unique_id VARCHAR(64) NOT NULL, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - 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, - next_trigger_at TIMESTAMP NOT NULL, - retry_count INT NOT NULL DEFAULT 0, - 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', + 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, + task_type smallint NOT NULL DEFAULT 1, + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE UNIQUE INDEX uk_name_unique_id_retry_task ON retry_task_0 (namespace_id, group_name, unique_id); -CREATE INDEX idx_namespace_id_group_name_scene_name_retry_task ON retry_task_0 (namespace_id, group_name, scene_name); -CREATE INDEX idx_namespace_id_group_name_retry_status_retry_task ON retry_task_0 (namespace_id, group_name, retry_status); -CREATE INDEX idx_idempotent_id_retry_task ON retry_task_0 (idempotent_id); -CREATE INDEX idx_biz_no_retry_task ON retry_task_0 (biz_no); -CREATE INDEX idx_create_dt_retry_task ON retry_task_0 (create_dt); +CREATE UNIQUE INDEX uk_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, unique_id); -COMMENT ON COLUMN retry_task_0.id IS '主键'; -COMMENT ON COLUMN retry_task_0.unique_id IS '同组下id唯一'; -COMMENT ON COLUMN retry_task_0.namespace_id IS '命名空间id'; -COMMENT ON COLUMN retry_task_0.group_name IS '组名称'; -COMMENT ON COLUMN retry_task_0.scene_name IS '场景名称'; -COMMENT ON COLUMN retry_task_0.idempotent_id IS '幂等id'; -COMMENT ON COLUMN retry_task_0.biz_no IS '业务编号'; -COMMENT ON COLUMN retry_task_0.executor_name IS '执行器名称'; -COMMENT ON COLUMN retry_task_0.args_str IS '执行方法参数'; -COMMENT ON COLUMN retry_task_0.ext_attrs IS '扩展字段'; -COMMENT ON COLUMN retry_task_0.next_trigger_at IS '下次触发时间'; -COMMENT ON COLUMN retry_task_0.retry_count IS '重试次数'; -COMMENT ON COLUMN retry_task_0.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数'; -COMMENT ON COLUMN retry_task_0.task_type IS '任务类型 1、重试数据 2、回调数据'; -COMMENT ON COLUMN retry_task_0.create_dt IS '创建时间'; -COMMENT ON COLUMN retry_task_0.update_dt IS '修改时间'; -COMMENT ON TABLE retry_task_0 IS '任务表'; +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); -CREATE TABLE retry_task_log +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 ( - id BIGSERIAL PRIMARY KEY, - unique_id VARCHAR(64) NOT NULL, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - 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', + 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, + next_trigger_at timestamp NOT NULL, + retry_count int NOT NULL DEFAULT 0, + 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 ); -CREATE INDEX idx_group_name_scene_name_retry_task_log ON retry_task_log (namespace_id, group_name, scene_name); -CREATE INDEX idx_retry_status_retry_task_log ON retry_task_log (retry_status); -CREATE INDEX idx_idempotent_id_retry_task_log ON retry_task_log (idempotent_id); -CREATE INDEX idx_unique_id ON retry_task_log (namespace_id, group_name, unique_id); -CREATE INDEX idx_biz_no_retry_task_log ON retry_task_log (biz_no); -CREATE INDEX idx_create_dt_retry_task_log ON retry_task_log (create_dt); +CREATE UNIQUE INDEX uk_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, unique_id); -COMMENT ON COLUMN retry_task_log.id IS '主键'; -COMMENT ON COLUMN retry_task_log.namespace_id IS '命名空间id'; -COMMENT ON COLUMN retry_task_log.unique_id IS '同组下id唯一'; -COMMENT ON COLUMN retry_task_log.group_name IS '组名称'; -COMMENT ON COLUMN retry_task_log.scene_name IS '场景名称'; -COMMENT ON COLUMN retry_task_log.idempotent_id IS '幂等id'; -COMMENT ON COLUMN retry_task_log.biz_no IS '业务编号'; -COMMENT ON COLUMN retry_task_log.executor_name IS '执行器名称'; -COMMENT ON COLUMN retry_task_log.args_str IS '执行方法参数'; -COMMENT ON COLUMN retry_task_log.ext_attrs IS '扩展字段'; -COMMENT ON COLUMN retry_task_log.retry_status IS '重试状态 0、重试中 1、成功 2、最大次数'; -COMMENT ON COLUMN retry_task_log.task_type IS '任务类型 1、重试数据 2、回调数据'; -COMMENT ON COLUMN retry_task_log.create_dt IS '创建时间'; -COMMENT ON COLUMN retry_task_log.update_dt IS '修改时间'; -COMMENT ON TABLE retry_task_log IS '任务日志基础信息表'; +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 TABLE retry_task_log_message +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 '任务表'; + +-- sj_retry_task_log +CREATE TABLE sj_retry_task_log ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name VARCHAR(64) NOT NULL, - unique_id VARCHAR(64) NOT NULL, - create_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - message TEXT NOT NULL, - log_num INT NOT NULL DEFAULT 1, - real_time BIGINT NOT NULL DEFAULT 0 + 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 ); -CREATE INDEX idx_namespace_id_group_name_unique_id ON retry_task_log_message (namespace_id, group_name, unique_id); -CREATE INDEX idx_create_dt ON retry_task_log_message (create_dt); -COMMENT ON COLUMN retry_task_log_message.id IS '主键'; -COMMENT ON COLUMN retry_task_log_message.namespace_id IS '命名空间'; -COMMENT ON COLUMN retry_task_log_message.group_name IS '组名称'; -COMMENT ON COLUMN retry_task_log_message.unique_id IS '同组下id唯一'; -COMMENT ON COLUMN retry_task_log_message.create_dt IS '创建时间'; -COMMENT ON COLUMN retry_task_log_message.message IS '异常信息'; -COMMENT ON COLUMN retry_task_log_message.log_num IS '日志条数'; -COMMENT ON COLUMN retry_task_log_message.real_time IS '实际时间'; -COMMENT ON TABLE retry_task_log_message IS '任务调度日志信息记录表'; +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 TABLE scene_config +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 '任务日志基础信息表'; + +-- sj_retry_task_log_message +CREATE TABLE sj_retry_task_log_message ( - 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 '', - deadline_request BIGINT NOT NULL DEFAULT 60000, - route_key SMALLINT NOT NULL DEFAULT 4, - executor_timeout INT NOT NULL DEFAULT 5, - 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', + 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 ); -CREATE UNIQUE INDEX uk_namespace_id_group_name_scene_name ON scene_config (namespace_id, group_name, scene_name); -COMMENT ON COLUMN scene_config.id IS '主键'; -COMMENT ON COLUMN scene_config.namespace_id IS '命名空间id'; -COMMENT ON COLUMN scene_config.scene_name IS '场景名称'; -COMMENT ON COLUMN scene_config.group_name IS '组名称'; -COMMENT ON COLUMN scene_config.scene_status IS '组状态 0、未启用 1、启用'; -COMMENT ON COLUMN scene_config.max_retry_count IS '最大重试次数'; -COMMENT ON COLUMN scene_config.back_off IS '1、默认等级 2、固定间隔时间 3、CRON 表达式'; -COMMENT ON COLUMN scene_config.trigger_interval IS '间隔时长'; -COMMENT ON COLUMN scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒'; -COMMENT ON COLUMN scene_config.description IS '描述'; -COMMENT ON COLUMN scene_config.route_key IS '路由策略'; -COMMENT ON COLUMN scene_config.executor_timeout IS '超时时间'; -COMMENT ON COLUMN scene_config.create_dt IS '创建时间'; -COMMENT ON COLUMN scene_config.update_dt IS '修改时间'; -COMMENT ON TABLE scene_config IS '场景配置'; +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_02 ON sj_retry_task_log_message (create_dt); -CREATE TABLE server_node +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.message IS '异常信息'; +COMMENT ON COLUMN sj_retry_task_log_message.log_num IS '日志数量'; +COMMENT ON COLUMN sj_retry_task_log_message.real_time IS '上报时间'; +COMMENT ON COLUMN sj_retry_task_log_message.create_dt IS '创建时间'; +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', - group_name VARCHAR(64) NOT NULL, - host_id VARCHAR(64) NOT NULL, - host_ip VARCHAR(64) NOT NULL, - host_port INT NOT NULL, - expire_at TIMESTAMP NOT NULL, - node_type SMALLINT NOT NULL, - ext_attrs VARCHAR(256) 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 '', + 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 ); -CREATE UNIQUE INDEX uk_host_id_host_ip ON server_node (host_id, host_ip); -CREATE INDEX idx_expire_at_node_type ON server_node (expire_at, node_type); -CREATE INDEX idx_namespace_id_group_name_server_node ON server_node (namespace_id, group_name); +CREATE UNIQUE INDEX uk_sj_retry_scene_config_01 ON sj_retry_scene_config (namespace_id, group_name, scene_name); -COMMENT ON COLUMN server_node.id IS '主键'; -COMMENT ON COLUMN server_node.group_name IS '组名称'; -COMMENT ON COLUMN server_node.namespace_id IS '命名空间id'; -COMMENT ON COLUMN server_node.host_id IS '主机id'; -COMMENT ON COLUMN server_node.host_ip IS '机器ip'; -COMMENT ON COLUMN server_node.host_port IS '机器端口'; -COMMENT ON COLUMN server_node.expire_at IS '过期时间'; -COMMENT ON COLUMN server_node.node_type IS '节点类型 1、客户端 2、是服务端'; -COMMENT ON COLUMN server_node.ext_attrs IS '扩展字段'; -COMMENT ON COLUMN server_node.create_dt IS '创建时间'; -COMMENT ON COLUMN server_node.update_dt IS '修改时间'; -COMMENT ON TABLE server_node IS '服务器节点'; +COMMENT ON COLUMN sj_retry_scene_config.id IS '主键'; +COMMENT ON COLUMN sj_retry_scene_config.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_retry_scene_config.scene_name IS '场景名称'; +COMMENT ON COLUMN sj_retry_scene_config.group_name IS '组名称'; +COMMENT ON COLUMN sj_retry_scene_config.scene_status IS '组状态 0、未启用 1、启用'; +COMMENT ON COLUMN sj_retry_scene_config.max_retry_count IS '最大重试次数'; +COMMENT ON COLUMN sj_retry_scene_config.back_off IS '1、默认等级 2、固定间隔时间 3、CRON 表达式'; +COMMENT ON COLUMN sj_retry_scene_config.trigger_interval IS '间隔时长'; +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.description IS '描述'; +COMMENT ON COLUMN sj_retry_scene_config.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_retry_scene_config.update_dt IS '修改时间'; +COMMENT ON TABLE sj_retry_scene_config IS '场景配置'; -CREATE TABLE distributed_lock +-- sj_server_node +CREATE TABLE sj_server_node ( - id BIGSERIAL PRIMARY KEY, - name VARCHAR(64) NOT NULL, - lock_until TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - locked_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - locked_by VARCHAR(255) NOT NULL, - 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, + host_id varchar(64) NOT NULL, + host_ip varchar(64) NOT NULL, + host_port int NOT NULL, + expire_at timestamp NOT NULL, + node_type smallint NOT NULL, + ext_attrs varchar(256) NULL DEFAULT '', + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -ALTER TABLE distributed_lock - ADD CONSTRAINT uk_name UNIQUE (name); +CREATE UNIQUE INDEX uk_sj_server_node_01 ON sj_server_node (host_id, host_ip); -COMMENT ON COLUMN distributed_lock.id IS '主键'; -COMMENT ON COLUMN distributed_lock.name IS '锁名称'; -COMMENT ON COLUMN distributed_lock.lock_until IS '锁定时长'; -COMMENT ON COLUMN distributed_lock.locked_at IS '锁定时间'; -COMMENT ON COLUMN distributed_lock.locked_by IS '锁定者'; -COMMENT ON COLUMN distributed_lock.create_dt IS '创建时间'; -COMMENT ON COLUMN distributed_lock.update_dt IS '修改时间'; -COMMENT ON TABLE distributed_lock IS '锁定表'; +CREATE INDEX idx_sj_server_node_01 ON sj_server_node (namespace_id, group_name); +CREATE INDEX idx_sj_server_node_02 ON sj_server_node (expire_at, node_type); +COMMENT ON COLUMN sj_server_node.id IS '主键'; +COMMENT ON COLUMN sj_server_node.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_server_node.group_name IS '组名称'; +COMMENT ON COLUMN sj_server_node.host_id IS '主机id'; +COMMENT ON COLUMN sj_server_node.host_ip IS '机器ip'; +COMMENT ON COLUMN sj_server_node.host_port IS '机器端口'; +COMMENT ON COLUMN sj_server_node.expire_at IS '过期时间'; +COMMENT ON COLUMN sj_server_node.node_type IS '节点类型 1、客户端 2、是服务端'; +COMMENT ON COLUMN sj_server_node.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_server_node.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_server_node.update_dt IS '修改时间'; +COMMENT ON TABLE sj_server_node IS '服务器节点'; -CREATE TABLE system_user +-- sj_distributed_lock +CREATE TABLE sj_distributed_lock ( - id BIGSERIAL PRIMARY KEY, - username VARCHAR(64) NOT NULL, - password VARCHAR(128) NOT NULL, - role SMALLINT NOT NULL DEFAULT 0, - create_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - update_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP + id bigserial 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, + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE UNIQUE INDEX uk_username ON system_user (username); -COMMENT ON COLUMN system_user.id IS '主键'; -COMMENT ON COLUMN system_user.username IS '账号'; -COMMENT ON COLUMN system_user.password IS '密码'; -COMMENT ON COLUMN system_user.role IS '角色:1-普通用户、2-管理员'; -COMMENT ON COLUMN system_user.create_dt IS '创建时间'; -COMMENT ON COLUMN system_user.update_dt IS '修改时间'; -COMMENT ON TABLE system_user IS '系统用户表'; +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 '锁定时间'; +COMMENT ON COLUMN sj_distributed_lock.locked_by IS '锁定者'; +COMMENT ON COLUMN sj_distributed_lock.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_distributed_lock.update_dt IS '修改时间'; +COMMENT ON TABLE sj_distributed_lock IS '锁定表'; --- pwd: admin -INSERT INTO system_user (username, password, role) +-- sj_system_user +CREATE TABLE sj_system_user +( + id bigserial PRIMARY KEY, + username varchar(64) NOT NULL, + password varchar(128) NOT NULL, + role smallint NOT NULL DEFAULT 0, + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP +); + +COMMENT ON COLUMN sj_system_user.id IS '主键'; +COMMENT ON COLUMN sj_system_user.username IS '账号'; +COMMENT ON COLUMN sj_system_user.password IS '密码'; +COMMENT ON COLUMN sj_system_user.role IS '角色:1-普通用户、2-管理员'; +COMMENT ON COLUMN sj_system_user.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_system_user.update_dt IS '修改时间'; +COMMENT ON TABLE sj_system_user IS '系统用户表'; + +INSERT INTO sj_system_user (username, password, role) VALUES ('admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2); -CREATE TABLE system_user_permission +-- sj_system_user_permission +CREATE TABLE sj_system_user_permission ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name VARCHAR(64) NOT NULL, - system_user_id BIGINT NOT NULL, - create_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - update_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP + id bigserial PRIMARY KEY, + group_name varchar(64) NOT NULL, + namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', + system_user_id bigint NOT NULL, + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE UNIQUE INDEX uk_namespace_id_group_name_system_user_id ON system_user_permission (namespace_id, group_name, system_user_id); -COMMENT ON COLUMN system_user_permission.id IS '主键'; -COMMENT ON COLUMN system_user_permission.namespace_id IS '命名空间id'; -COMMENT ON COLUMN system_user_permission.group_name IS '组名称'; -COMMENT ON COLUMN system_user_permission.system_user_id IS '系统用户id'; -COMMENT ON COLUMN system_user_permission.create_dt IS '创建时间'; -COMMENT ON COLUMN system_user_permission.update_dt IS '修改时间'; -COMMENT ON TABLE system_user_permission IS '系统用户权限表'; +CREATE UNIQUE INDEX uk_sj_system_user_permission_01 ON sj_system_user_permission (namespace_id, group_name, system_user_id); +COMMENT ON COLUMN sj_system_user_permission.id IS '主键'; +COMMENT ON COLUMN sj_system_user_permission.group_name IS '组名称'; +COMMENT ON COLUMN sj_system_user_permission.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_system_user_permission.system_user_id IS '系统用户id'; +COMMENT ON COLUMN sj_system_user_permission.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_system_user_permission.update_dt IS '修改时间'; +COMMENT ON TABLE sj_system_user_permission IS '系统用户权限表'; -CREATE TABLE sequence_alloc +-- sj_sequence_alloc +CREATE TABLE sj_sequence_alloc ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name VARCHAR(64) NOT NULL DEFAULT '', - max_id BIGINT NOT NULL DEFAULT 1, - step INT NOT NULL DEFAULT 100, - 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 DEFAULT '', + max_id bigint NOT NULL DEFAULT 1, + step int NOT NULL DEFAULT 100, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE UNIQUE INDEX uk_namespace_id_group_name ON sequence_alloc (namespace_id, group_name); +CREATE UNIQUE INDEX uk_sj_sequence_alloc_01 ON sj_sequence_alloc (namespace_id, group_name); -COMMENT ON COLUMN sequence_alloc.id IS '主键'; -COMMENT ON COLUMN sequence_alloc.namespace_id IS '命名空间id'; -COMMENT ON COLUMN sequence_alloc.group_name IS '组名称'; -COMMENT ON COLUMN sequence_alloc.max_id IS '最大id'; -COMMENT ON COLUMN sequence_alloc.step IS '步长'; -COMMENT ON COLUMN sequence_alloc.update_dt IS '更新时间'; -COMMENT ON TABLE sequence_alloc IS '号段模式序号ID分配表'; +COMMENT ON COLUMN sj_sequence_alloc.id IS '主键'; +COMMENT ON COLUMN sj_sequence_alloc.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_sequence_alloc.group_name IS '组名称'; +COMMENT ON COLUMN sj_sequence_alloc.max_id IS '最大id'; +COMMENT ON COLUMN sj_sequence_alloc.step IS '步长'; +COMMENT ON COLUMN sj_sequence_alloc.update_dt IS '更新时间'; +COMMENT ON TABLE sj_sequence_alloc IS '号段模式序号ID分配表'; --- 分布式调度DDL -CREATE TABLE job +-- sj_job +CREATE TABLE sj_job ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name VARCHAR(64) NOT NULL, - job_name VARCHAR(64) NOT NULL, - args_str TEXT NOT NULL DEFAULT '', - args_type SMALLINT NOT NULL DEFAULT 1, - next_trigger_at BIGINT NOT NULL, - job_status SMALLINT NOT NULL DEFAULT 1, - task_type SMALLINT NOT NULL DEFAULT 1, - route_key SMALLINT NOT NULL DEFAULT 4, - executor_type SMALLINT NOT NULL DEFAULT 1, - executor_info VARCHAR(255) DEFAULT NULL, - trigger_type SMALLINT NOT NULL, - trigger_interval VARCHAR(255) NOT NULL, - block_strategy SMALLINT NOT NULL DEFAULT 1, - executor_timeout INT NOT NULL DEFAULT 0, - max_retry_times INT NOT NULL DEFAULT 0, - parallel_num INT NOT NULL DEFAULT 1, - retry_interval INT NOT NULL DEFAULT 0, - bucket_index INT NOT NULL DEFAULT 0, - resident SMALLINT NOT NULL DEFAULT 0, - description VARCHAR(256) NOT NULL DEFAULT '', - ext_attrs VARCHAR(256) DEFAULT NULL, - create_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - update_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - deleted SMALLINT NOT NULL DEFAULT 0 + id bigserial PRIMARY KEY, + namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', + group_name varchar(64) NOT NULL, + job_name varchar(64) NOT NULL, + args_str text NULL DEFAULT NULL, + args_type smallint NOT NULL DEFAULT 1, + next_trigger_at bigint NOT NULL, + job_status smallint NOT NULL DEFAULT 1, + task_type smallint NOT NULL DEFAULT 1, + route_key smallint NOT NULL DEFAULT 4, + executor_type smallint NOT NULL DEFAULT 1, + executor_info varchar(255) NULL DEFAULT NULL, + trigger_type smallint NOT NULL, + trigger_interval varchar(255) NOT NULL, + block_strategy smallint NOT NULL DEFAULT 1, + executor_timeout int NOT NULL DEFAULT 0, + max_retry_times int NOT NULL DEFAULT 0, + parallel_num int NOT NULL DEFAULT 1, + retry_interval int NOT NULL DEFAULT 0, + bucket_index int NOT NULL DEFAULT 0, + resident smallint NOT NULL DEFAULT 0, + description varchar(256) NOT NULL DEFAULT '', + ext_attrs varchar(256) NULL DEFAULT '', + deleted smallint NOT NULL DEFAULT 0, + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE INDEX idx_namespace_id_group_name_job ON job (namespace_id, group_name); -CREATE INDEX idx_job_status_bucket_index_job ON job (job_status, bucket_index); -CREATE INDEX idx_create_dt_job ON job (create_dt); +CREATE INDEX idx_sj_job_01 ON sj_job (namespace_id, group_name); +CREATE INDEX idx_sj_job_02 ON sj_job (job_status, bucket_index); +CREATE INDEX idx_sj_job_03 ON sj_job (create_dt); -COMMENT ON COLUMN job.id IS '主键'; -COMMENT ON COLUMN job.namespace_id IS '命名空间id'; -COMMENT ON COLUMN job.group_name IS '组名称'; -COMMENT ON COLUMN job.job_name IS '名称'; -COMMENT ON COLUMN job.args_str IS '执行方法参数'; -COMMENT ON COLUMN job.args_type IS '参数类型'; -COMMENT ON COLUMN job.next_trigger_at IS '下次触发时间'; -COMMENT ON COLUMN job.job_status IS '重试状态 0、关闭、1、开启'; -COMMENT ON COLUMN job.task_type IS '任务类型 1、集群 2、广播 3、切片'; -COMMENT ON COLUMN job.route_key IS '路由策略'; -COMMENT ON COLUMN job.executor_type IS '执行器类型'; -COMMENT ON COLUMN job.executor_info IS '执行器名称'; -COMMENT ON COLUMN job.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间'; -COMMENT ON COLUMN job.trigger_interval IS '间隔时长'; -COMMENT ON COLUMN job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行'; -COMMENT ON COLUMN job.executor_timeout IS '任务执行超时时间,单位秒'; -COMMENT ON COLUMN job.max_retry_times IS '最大重试次数'; -COMMENT ON COLUMN job.parallel_num IS '并行数'; -COMMENT ON COLUMN job.retry_interval IS '更新重试间隔(s)'; -COMMENT ON COLUMN job.bucket_index IS 'bucket'; -COMMENT ON COLUMN job.resident IS '是否是常驻任务'; -COMMENT ON COLUMN job.description IS '描述'; -COMMENT ON COLUMN job.ext_attrs IS '扩展字段'; -COMMENT ON COLUMN job.create_dt IS '创建时间'; -COMMENT ON COLUMN job.deleted IS '逻辑删除 1、删除'; -COMMENT ON COLUMN job.update_dt IS '更新时间'; -COMMENT ON TABLE job IS '任务信息'; +COMMENT ON COLUMN sj_job.id IS '主键'; +COMMENT ON COLUMN sj_job.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_job.group_name IS '组名称'; +COMMENT ON COLUMN sj_job.job_name IS '名称'; +COMMENT ON COLUMN sj_job.args_str IS '执行方法参数'; +COMMENT ON COLUMN sj_job.args_type IS '参数类型 '; +COMMENT ON COLUMN sj_job.next_trigger_at IS '下次触发时间'; +COMMENT ON COLUMN sj_job.job_status IS '任务状态 0、关闭、1、开启'; +COMMENT ON COLUMN sj_job.task_type IS '任务类型 1、集群 2、广播 3、切片'; +COMMENT ON COLUMN sj_job.route_key IS '路由策略'; +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.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.bucket_index IS 'bucket'; +COMMENT ON COLUMN sj_job.resident IS '是否是常驻任务'; +COMMENT ON COLUMN sj_job.description IS '描述'; +COMMENT ON COLUMN sj_job.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_job.deleted IS '逻辑删除 1、删除'; +COMMENT ON COLUMN sj_job.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_job.update_dt IS '修改时间'; +COMMENT ON TABLE sj_job IS '任务信息'; -CREATE TABLE job_log_message +-- sj_job_log_message +CREATE TABLE sj_job_log_message ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name VARCHAR(64) NOT NULL, - job_id BIGINT NOT NULL, - task_batch_id BIGINT NOT NULL, - task_id BIGINT NOT NULL, - message TEXT NOT NULL, - log_num INT NOT NULL DEFAULT 1, - real_time BIGINT NOT NULL DEFAULT 0, - ext_attrs VARCHAR(256) DEFAULT '', - 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, + job_id bigint NOT NULL, + task_batch_id bigint NOT NULL, + task_id bigint NOT NULL, + message text NOT NULL, + log_num int NOT NULL DEFAULT 1, + real_time bigint NOT NULL DEFAULT 0, + ext_attrs varchar(256) NULL DEFAULT '', + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE INDEX idx_namespace_id_group_name_to_job_log_message ON job_log_message (namespace_id, group_name); -CREATE INDEX idx_task_batch_id_task_id_to_job_log_message ON job_log_message (task_batch_id, task_id); -CREATE INDEX idx_create_dt_to_job_log_message ON job_log_message (create_dt); +CREATE INDEX idx_sj_job_log_message_01 ON sj_job_log_message (task_batch_id, task_id); +CREATE INDEX idx_sj_job_log_message_02 ON sj_job_log_message (create_dt); +CREATE INDEX idx_sj_job_log_message_03 ON sj_job_log_message (namespace_id, group_name); -COMMENT ON COLUMN job_log_message.id IS '主键'; -COMMENT ON COLUMN job_log_message.namespace_id IS '命名空间id'; -COMMENT ON COLUMN job_log_message.group_name IS '组名称'; -COMMENT ON COLUMN job_log_message.job_id IS '任务信息id'; -COMMENT ON COLUMN job_log_message.task_batch_id IS '任务批次id'; -COMMENT ON COLUMN job_log_message.task_id IS '调度任务id'; -COMMENT ON COLUMN job_log_message.message IS '调度信息'; -COMMENT ON COLUMN job_log_message.log_num IS '日志序号'; -COMMENT ON COLUMN job_log_message.real_time IS '实际时间'; -COMMENT ON COLUMN job_log_message.create_dt IS '创建时间'; -COMMENT ON COLUMN job_log_message.ext_attrs IS '扩展字段'; -COMMENT ON TABLE job_log_message IS '调度日志'; +COMMENT ON COLUMN sj_job_log_message.id IS '主键'; +COMMENT ON COLUMN sj_job_log_message.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_job_log_message.group_name IS '组名称'; +COMMENT ON COLUMN sj_job_log_message.job_id IS '任务信息id'; +COMMENT ON COLUMN sj_job_log_message.task_batch_id IS '任务批次id'; +COMMENT ON COLUMN sj_job_log_message.task_id IS '调度任务id'; +COMMENT ON COLUMN sj_job_log_message.message IS '调度信息'; +COMMENT ON COLUMN sj_job_log_message.log_num IS '日志数量'; +COMMENT ON COLUMN sj_job_log_message.real_time IS '上报时间'; +COMMENT ON COLUMN sj_job_log_message.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_job_log_message.create_dt IS '创建时间'; +COMMENT ON TABLE sj_job_log_message IS '调度日志'; -CREATE TABLE job_task +-- sj_job_task +CREATE TABLE sj_job_task ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name VARCHAR(64) NOT NULL, - job_id BIGINT NOT NULL, - task_batch_id BIGINT NOT NULL, - parent_id BIGINT NOT NULL DEFAULT 0, - task_status SMALLINT NOT NULL DEFAULT 0, - retry_count INT NOT NULL DEFAULT 0, - client_info VARCHAR(128) DEFAULT NULL, - result_message TEXT NOT NULL, - args_str TEXT NOT NULL, - args_type SMALLINT NOT NULL DEFAULT 1, - ext_attrs VARCHAR(256) 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', + group_name varchar(64) NOT NULL, + job_id bigint NOT NULL, + task_batch_id bigint NOT NULL, + parent_id bigint NOT NULL DEFAULT 0, + task_status smallint NOT NULL DEFAULT 0, + retry_count int NOT NULL DEFAULT 0, + client_info varchar(128) NULL DEFAULT NULL, + result_message text NOT NULL, + args_str text NULL DEFAULT NULL, + args_type smallint NOT NULL DEFAULT 1, + ext_attrs varchar(256) NULL DEFAULT '', + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); +CREATE INDEX idx_sj_job_task_01 ON sj_job_task (task_batch_id, task_status); +CREATE INDEX idx_sj_job_task_02 ON sj_job_task (create_dt); +CREATE INDEX idx_sj_job_task_03 ON sj_job_task (namespace_id, group_name); -CREATE INDEX idx_namespace_id_group_name_to_job_task ON job_task (namespace_id, group_name); -CREATE INDEX idx_task_batch_id_task_status_to_job_task ON job_task (task_batch_id, task_status); -CREATE INDEX idx_create_dt_to_job_task ON job_task (create_dt); -COMMENT ON COLUMN job_task.id IS '主键'; -COMMENT ON COLUMN job_task.namespace_id IS '命名空间id'; -COMMENT ON COLUMN job_task.group_name IS '组名称'; -COMMENT ON COLUMN job_task.job_id IS '任务信息id'; -COMMENT ON COLUMN job_task.task_batch_id IS '任务批次id'; -COMMENT ON COLUMN job_task.parent_id IS '父执行器id'; -COMMENT ON COLUMN job_task.task_status IS '执行的状态 0、失败 1、成功'; -COMMENT ON COLUMN job_task.retry_count IS '重试次数'; -COMMENT ON COLUMN job_task.client_info IS '客户端地址 clientId#ip:port'; -COMMENT ON COLUMN job_task.result_message IS '调度信息'; -COMMENT ON COLUMN job_task.args_str IS '执行方法参数'; -COMMENT ON COLUMN job_task.args_type IS '参数类型'; -COMMENT ON COLUMN job_task.create_dt IS '创建时间'; -COMMENT ON COLUMN job_task.update_dt IS '创建时间'; -COMMENT ON COLUMN job_task.ext_attrs IS '扩展字段'; -COMMENT ON TABLE job_task IS '任务实例'; +COMMENT ON COLUMN sj_job_task.id IS '主键'; +COMMENT ON COLUMN sj_job_task.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_job_task.group_name IS '组名称'; +COMMENT ON COLUMN sj_job_task.job_id IS '任务信息id'; +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.client_info IS '客户端地址 clientId#ip:port'; +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 '参数类型 '; +COMMENT ON COLUMN sj_job_task.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_job_task.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_job_task.update_dt IS '修改时间'; +COMMENT ON TABLE sj_job_task IS '任务实例'; -CREATE TABLE job_task_batch +-- sj_job_task_batch +CREATE TABLE sj_job_task_batch ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name VARCHAR(64) NOT NULL, - job_id BIGINT NOT NULL, - workflow_node_id BIGINT NOT NULL DEFAULT 0, - parent_workflow_node_id BIGINT NOT NULL DEFAULT 0, - workflow_task_batch_id BIGINT NOT NULL DEFAULT 0, - parent_id VARCHAR(64) NOT NULL DEFAULT '', - task_batch_status SMALLINT NOT NULL DEFAULT 0, - operation_reason SMALLINT NOT NULL DEFAULT 0, - execution_at BIGINT NOT NULL DEFAULT 0, - system_task_type SMALLINT NOT NULL DEFAULT 3, - ext_attrs VARCHAR(256) DEFAULT '', - deleted SMALLINT NOT NULL DEFAULT 0, - 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, + job_id bigint NOT NULL, + workflow_node_id bigint NOT NULL DEFAULT 0, + parent_workflow_node_id bigint NOT NULL DEFAULT 0, + workflow_task_batch_id bigint NOT NULL DEFAULT 0, + task_batch_status smallint NOT NULL DEFAULT 0, + operation_reason smallint NOT NULL DEFAULT 0, + execution_at bigint NOT NULL DEFAULT 0, + system_task_type smallint NOT NULL DEFAULT 3, + parent_id varchar(64) NOT NULL DEFAULT '', + ext_attrs varchar(256) NULL DEFAULT '', + deleted smallint NOT NULL DEFAULT 0, + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE INDEX idx_namespace_id_group_name_to_job_task_batch ON job_task_batch (namespace_id, group_name); -CREATE INDEX idx_job_id_task_batch_status_to_job_task_batch ON job_task_batch (job_id, task_batch_status); -CREATE INDEX idx_create_dt_to_job_task_batch ON job_task_batch (create_dt); -CREATE INDEX idx_workflow_task_batch_id_workflow_node_id ON job_task_batch (workflow_task_batch_id, workflow_node_id); +CREATE INDEX idx_sj_job_task_batch_01 ON sj_job_task_batch (job_id, task_batch_status); +CREATE INDEX idx_sj_job_task_batch_02 ON sj_job_task_batch (create_dt); +CREATE INDEX idx_sj_job_task_batch_03 ON sj_job_task_batch (namespace_id, group_name); +CREATE INDEX idx_sj_job_task_batch_04 ON sj_job_task_batch (workflow_task_batch_id, workflow_node_id); -COMMENT ON COLUMN job_task_batch.id IS '主键'; -COMMENT ON COLUMN job_task_batch.namespace_id IS '命名空间id'; -COMMENT ON COLUMN job_task_batch.group_name IS '组名称'; -COMMENT ON COLUMN job_task_batch.job_id IS '任务信息id'; -COMMENT ON COLUMN job_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功'; -COMMENT ON COLUMN job_task_batch.operation_reason IS '操作原因'; -COMMENT ON COLUMN job_task_batch.workflow_node_id IS '工作流节点id'; -COMMENT ON COLUMN job_task_batch.parent_workflow_node_id IS '父节点'; -COMMENT ON COLUMN job_task_batch.workflow_task_batch_id IS '任务批次id'; -COMMENT ON COLUMN job_task_batch.system_task_type IS '任务类型 0、系统任务 1、业务任务'; -COMMENT ON COLUMN job_task_batch.execution_at IS '任务执行时间'; -COMMENT ON COLUMN job_task_batch.parent_id IS '父节点'; -COMMENT ON COLUMN job_task_batch.deleted IS '逻辑删除 1、删除'; -COMMENT ON COLUMN job_task_batch.create_dt IS '创建时间'; -COMMENT ON COLUMN job_task_batch.update_dt IS '创建时间'; -COMMENT ON COLUMN job_task_batch.ext_attrs IS '扩展字段'; -COMMENT ON TABLE job_task_batch IS '任务批次'; +COMMENT ON COLUMN sj_job_task_batch.id IS '主键'; +COMMENT ON COLUMN sj_job_task_batch.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_job_task_batch.group_name IS '组名称'; +COMMENT ON COLUMN sj_job_task_batch.job_id IS '任务id'; +COMMENT ON COLUMN sj_job_task_batch.workflow_node_id IS '工作流节点id'; +COMMENT ON COLUMN sj_job_task_batch.parent_workflow_node_id IS '工作流任务父批次id'; +COMMENT ON COLUMN sj_job_task_batch.workflow_task_batch_id IS '工作流任务批次id'; +COMMENT ON COLUMN sj_job_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功'; +COMMENT ON COLUMN sj_job_task_batch.operation_reason IS '操作原因'; +COMMENT ON COLUMN sj_job_task_batch.execution_at IS '任务执行时间'; +COMMENT ON COLUMN sj_job_task_batch.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务'; +COMMENT ON COLUMN sj_job_task_batch.parent_id IS '父节点'; +COMMENT ON COLUMN sj_job_task_batch.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_job_task_batch.deleted IS '逻辑删除 1、删除'; +COMMENT ON COLUMN sj_job_task_batch.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_job_task_batch.update_dt IS '修改时间'; +COMMENT ON TABLE sj_job_task_batch IS '任务批次'; -CREATE TABLE job_notify_config +-- sj_job_summary +CREATE TABLE sj_job_summary ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name VARCHAR(64) NOT NULL, - job_id BIGINT NOT NULL, - notify_status SMALLINT NOT NULL DEFAULT 0, - notify_type SMALLINT NOT NULL DEFAULT 0, - notify_attribute VARCHAR(512) NOT NULL, - notify_threshold INT NOT NULL DEFAULT 0, - notify_scene SMALLINT NOT NULL DEFAULT 0, - rate_limiter_status SMALLINT NOT NULL DEFAULT 0, - rate_limiter_threshold INT NOT NULL DEFAULT 0, - 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', + group_name varchar(64) NOT NULL DEFAULT '', + business_id bigint NOT NULL, + system_task_type smallint NOT NULL DEFAULT 3, + trigger_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + success_num int NOT NULL DEFAULT 0, + fail_num int NOT NULL DEFAULT 0, + fail_reason varchar(512) NOT NULL DEFAULT '', + stop_num int NOT NULL DEFAULT 0, + stop_reason varchar(512) NOT NULL DEFAULT '', + cancel_num int NOT NULL DEFAULT 0, + cancel_reason varchar(512) NOT NULL DEFAULT '', + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE INDEX idx_namespace_id_group_name_job_id_job_notify_config ON job_notify_config (namespace_id, group_name, job_id); +CREATE UNIQUE INDEX uk_sj_job_summary_01 ON sj_job_summary (trigger_at, system_task_type, business_id); -COMMENT ON COLUMN job_notify_config.id IS '主键'; -COMMENT ON COLUMN job_notify_config.namespace_id IS '命名空间id'; -COMMENT ON COLUMN job_notify_config.group_name IS '组名称'; -COMMENT ON COLUMN job_notify_config.job_id IS '任务信息id'; -COMMENT ON COLUMN job_notify_config.notify_status IS '通知状态 0、未启用 1、启用'; -COMMENT ON COLUMN job_notify_config.notify_type IS '通知类型 1、钉钉 2、邮件 3、企业微信'; -COMMENT ON COLUMN job_notify_config.notify_attribute IS '配置属性'; -COMMENT ON COLUMN job_notify_config.notify_threshold IS '通知阈值'; -COMMENT ON COLUMN job_notify_config.notify_scene IS '通知场景'; -COMMENT ON COLUMN job_notify_config.rate_limiter_status IS '限流状态 0、未启用 1、启用'; -COMMENT ON COLUMN job_notify_config.rate_limiter_threshold IS '每秒限流阈值'; -COMMENT ON COLUMN job_notify_config.description IS '描述'; -COMMENT ON COLUMN job_notify_config.create_dt IS '创建时间'; -COMMENT ON COLUMN job_notify_config.update_dt IS '修改时间'; -COMMENT ON TABLE job_notify_config IS '通知配置'; +CREATE INDEX idx_sj_job_summary_01 ON sj_job_summary (namespace_id, group_name, business_id); -CREATE TABLE retry_summary +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.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 '执行成功-日志数量'; +COMMENT ON COLUMN sj_job_summary.fail_num IS '执行失败-日志数量'; +COMMENT ON COLUMN sj_job_summary.fail_reason IS '失败原因'; +COMMENT ON COLUMN sj_job_summary.stop_num IS '执行失败-日志数量'; +COMMENT ON COLUMN sj_job_summary.stop_reason IS '失败原因'; +COMMENT ON COLUMN sj_job_summary.cancel_num IS '执行失败-日志数量'; +COMMENT ON COLUMN sj_job_summary.cancel_reason IS '失败原因'; +COMMENT ON COLUMN sj_job_summary.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_job_summary.update_dt IS '修改时间'; +COMMENT ON TABLE sj_job_summary IS 'DashBoard_Job'; + +-- sj_retry_summary +CREATE TABLE sj_retry_summary ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name VARCHAR(64) NOT NULL DEFAULT '', - scene_name VARCHAR(50) NOT NULL DEFAULT '', - trigger_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - running_num INT NOT NULL DEFAULT 0, - finish_num INT NOT NULL DEFAULT 0, - max_count_num INT NOT NULL DEFAULT 0, - suspend_num INT NOT NULL DEFAULT 0, - 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 DEFAULT '', + scene_name varchar(50) NOT NULL DEFAULT '', + trigger_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + running_num int NOT NULL DEFAULT 0, + finish_num int NOT NULL DEFAULT 0, + max_count_num int NOT NULL DEFAULT 0, + suspend_num int NOT NULL DEFAULT 0, + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE UNIQUE INDEX uk_scene_name_trigger_at ON retry_summary (namespace_id, group_name, scene_name, trigger_at); +CREATE UNIQUE INDEX uk_sj_retry_summary_01 ON sj_retry_summary (namespace_id, group_name, scene_name, trigger_at); -COMMENT ON COLUMN retry_summary.id IS '主键'; -COMMENT ON COLUMN retry_summary.namespace_id IS '命名空间id'; -COMMENT ON COLUMN retry_summary.group_name IS '组名称'; -COMMENT ON COLUMN retry_summary.scene_name IS '场景名称'; -COMMENT ON COLUMN retry_summary.trigger_at IS '统计时间'; -COMMENT ON COLUMN retry_summary.running_num IS '重试中-日志数量'; -COMMENT ON COLUMN retry_summary.finish_num IS '重试完成-日志数量'; -COMMENT ON COLUMN retry_summary.max_count_num IS '重试到达最大次数-日志数量'; -COMMENT ON COLUMN retry_summary.suspend_num IS '暂停重试-日志数量'; -COMMENT ON COLUMN retry_summary.create_dt IS '创建时间'; -COMMENT ON COLUMN retry_summary.update_dt IS '修改时间'; -COMMENT ON TABLE retry_summary IS 'DashBoard_Retry'; +CREATE INDEX idx_sj_retry_summary_01 ON sj_retry_summary (trigger_at); -CREATE TABLE job_summary +COMMENT ON COLUMN sj_retry_summary.id IS '主键'; +COMMENT ON COLUMN sj_retry_summary.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_retry_summary.group_name IS '组名称'; +COMMENT ON COLUMN sj_retry_summary.scene_name IS '场景名称'; +COMMENT ON COLUMN sj_retry_summary.trigger_at IS '统计时间'; +COMMENT ON COLUMN sj_retry_summary.running_num IS '重试中-日志数量'; +COMMENT ON COLUMN sj_retry_summary.finish_num IS '重试完成-日志数量'; +COMMENT ON COLUMN sj_retry_summary.max_count_num IS '重试到达最大次数-日志数量'; +COMMENT ON COLUMN sj_retry_summary.suspend_num IS '暂停重试-日志数量'; +COMMENT ON COLUMN sj_retry_summary.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_retry_summary.update_dt IS '修改时间'; +COMMENT ON TABLE sj_retry_summary IS 'DashBoard_Retry'; + +-- sj_workflow +CREATE TABLE sj_workflow ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name VARCHAR(64) NOT NULL DEFAULT '', - business_id BIGINT NOT NULL, - system_task_type SMALLINT NOT NULL DEFAULT '3', - trigger_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - success_num INT NOT NULL DEFAULT 0, - fail_num INT NOT NULL DEFAULT 0, - fail_reason VARCHAR(512) NOT NULL DEFAULT '', - stop_num INT NOT NULL DEFAULT 0, - stop_reason VARCHAR(512) NOT NULL DEFAULT '', - cancel_num INT NOT NULL DEFAULT 0, - cancel_reason VARCHAR(512) NOT NULL DEFAULT '', - create_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - update_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP -); - -CREATE UNIQUE INDEX uk_trigger_at_system_task_type_business_id ON job_summary (trigger_at, system_task_type, business_id); -CREATE INDEX idx_namespace_id_group_name_job_id ON job_summary (namespace_id, group_name, business_id); - -COMMENT ON COLUMN job_summary.id IS '主键'; -COMMENT ON COLUMN job_summary.namespace_id IS '命名空间id'; -COMMENT ON COLUMN job_summary.group_name IS '组名称'; -COMMENT ON COLUMN job_summary.business_id IS '业务id (job_id或workflow_id)'; -COMMENT ON COLUMN job_summary.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务'; -COMMENT ON COLUMN job_summary.trigger_at IS '统计时间'; -COMMENT ON COLUMN job_summary.success_num IS '执行成功-日志数量'; -COMMENT ON COLUMN job_summary.fail_num IS '执行失败-日志数量'; -COMMENT ON COLUMN job_summary.fail_reason IS '失败原因'; -COMMENT ON COLUMN job_summary.stop_num IS '执行失败-日志数量'; -COMMENT ON COLUMN job_summary.stop_reason IS '失败原因'; -COMMENT ON COLUMN job_summary.cancel_num IS '执行失败-日志数量'; -COMMENT ON COLUMN job_summary.cancel_reason IS '失败原因'; -COMMENT ON TABLE job_summary IS 'DashBoard_Job'; - -CREATE TABLE workflow -( - id BIGSERIAL PRIMARY KEY, + id bigserial PRIMARY KEY, workflow_name varchar(64) NOT NULL, namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', group_name varchar(64) NOT NULL, workflow_status smallint NOT NULL DEFAULT 1, trigger_type smallint NOT NULL, trigger_interval varchar(255) NOT NULL, - next_trigger_at BIGINT NOT NULL, + next_trigger_at bigint NOT NULL, block_strategy smallint NOT NULL DEFAULT 1, - executor_timeout INT NOT NULL DEFAULT 0, + executor_timeout int NOT NULL DEFAULT 0, description varchar(256) NOT NULL DEFAULT '', - flow_info text DEFAULT NULL, - bucket_index INT NOT NULL DEFAULT 0, - version INT NOT NULL, - create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, - update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + flow_info text NULL DEFAULT NULL, + bucket_index int NOT NULL DEFAULT 0, + version int NOT NULL, + ext_attrs varchar(256) NULL DEFAULT '', deleted smallint NOT NULL DEFAULT 0, - ext_attrs varchar(256) NULL DEFAULT '' + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); +CREATE INDEX idx_sj_workflow_01 ON sj_workflow (create_dt); +CREATE INDEX idx_sj_workflow_02 ON sj_workflow (namespace_id, group_name); -CREATE INDEX idx_create_dt_workflow ON workflow (create_dt); -CREATE INDEX idx_namespace_id_group_name_workflow ON workflow (namespace_id, group_name); +COMMENT ON COLUMN sj_workflow.id IS '主键'; +COMMENT ON COLUMN sj_workflow.workflow_name IS '工作流名称'; +COMMENT ON COLUMN sj_workflow.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_workflow.group_name IS '组名称'; +COMMENT ON COLUMN sj_workflow.workflow_status IS '工作流状态 0、关闭、1、开启'; +COMMENT ON COLUMN sj_workflow.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间'; +COMMENT ON COLUMN sj_workflow.trigger_interval IS '间隔时长'; +COMMENT ON COLUMN sj_workflow.next_trigger_at IS '下次触发时间'; +COMMENT ON COLUMN sj_workflow.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行'; +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.bucket_index IS 'bucket'; +COMMENT ON COLUMN sj_workflow.version IS '版本号'; +COMMENT ON COLUMN sj_workflow.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_workflow.deleted IS '逻辑删除 1、删除'; +COMMENT ON COLUMN sj_workflow.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_workflow.update_dt IS '修改时间'; +COMMENT ON TABLE sj_workflow IS '工作流'; -COMMENT ON TABLE workflow IS '工作流'; -COMMENT ON COLUMN workflow.id IS '主键'; -COMMENT ON COLUMN workflow.workflow_name IS '工作流名称'; -COMMENT ON COLUMN workflow.namespace_id IS '命名空间id'; -COMMENT ON COLUMN workflow.group_name IS '组名称'; -COMMENT ON COLUMN workflow.workflow_status IS '工作流状态 0、关闭、1、开启'; -COMMENT ON COLUMN workflow.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间'; -COMMENT ON COLUMN workflow.trigger_interval IS '间隔时长'; -COMMENT ON COLUMN workflow.next_trigger_at IS '下次触发时间'; -COMMENT ON COLUMN workflow.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行'; -COMMENT ON COLUMN workflow.executor_timeout IS '任务执行超时时间,单位秒'; -COMMENT ON COLUMN workflow.description IS '描述'; -COMMENT ON COLUMN workflow.flow_info IS '流程信息'; -COMMENT ON COLUMN workflow.bucket_index IS 'bucket'; -COMMENT ON COLUMN workflow.version IS '版本号'; -COMMENT ON COLUMN workflow.create_dt IS '创建时间'; -COMMENT ON COLUMN workflow.update_dt IS '修改时间'; -COMMENT ON COLUMN workflow.deleted IS '逻辑删除 1、删除'; -COMMENT ON COLUMN workflow.ext_attrs IS '扩展字段'; - -CREATE TABLE workflow_node +-- sj_workflow_node +CREATE TABLE sj_workflow_node ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - node_name VARCHAR(64) NOT NULL, - group_name VARCHAR(64) NOT NULL, - job_id BIGINT NOT NULL, - workflow_id BIGINT NOT NULL, - node_type SMALLINT NOT NULL DEFAULT 1, - expression_type SMALLINT NOT NULL DEFAULT 0, - fail_strategy SMALLINT NOT NULL DEFAULT 1, - workflow_node_status SMALLINT NOT NULL DEFAULT 1, - priority_level INT NOT NULL DEFAULT 1, - node_info TEXT DEFAULT NULL, - version INT NOT NULL, - create_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - update_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - deleted SMALLINT NOT NULL DEFAULT 0, - ext_attrs VARCHAR(256) NULL DEFAULT '' + id bigserial PRIMARY KEY, + namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', + node_name varchar(64) NOT NULL, + group_name varchar(64) NOT NULL, + job_id bigint NOT NULL, + workflow_id bigint NOT NULL, + node_type smallint NOT NULL DEFAULT 1, + expression_type smallint NOT NULL DEFAULT 0, + fail_strategy smallint NOT NULL DEFAULT 1, + workflow_node_status smallint NOT NULL DEFAULT 1, + priority_level int NOT NULL DEFAULT 1, + node_info text NULL DEFAULT NULL, + version int NOT NULL, + ext_attrs varchar(256) NULL DEFAULT '', + deleted smallint NOT NULL DEFAULT 0, + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE INDEX idx_create_dt_workflow_node ON workflow_node (create_dt); -CREATE INDEX idx_namespace_id_group_name_workflow_node ON workflow_node (namespace_id, group_name); +CREATE INDEX idx_sj_workflow_node_01 ON sj_workflow_node (create_dt); +CREATE INDEX idx_sj_workflow_node_02 ON sj_workflow_node (namespace_id, group_name); -COMMENT ON TABLE workflow_node IS '工作流节点'; -COMMENT ON COLUMN workflow_node.id IS '主键'; -COMMENT ON COLUMN workflow_node.namespace_id IS '命名空间id'; -COMMENT ON COLUMN workflow_node.node_name IS '节点名称'; -COMMENT ON COLUMN workflow_node.group_name IS '组名称'; -COMMENT ON COLUMN workflow_node.job_id IS '任务信息id'; -COMMENT ON COLUMN workflow_node.workflow_id IS '工作流ID'; -COMMENT ON COLUMN workflow_node.node_type IS '1、任务节点 2、条件节点'; -COMMENT ON COLUMN workflow_node.expression_type IS '1、SpEl、2、Aviator 3、QL'; -COMMENT ON COLUMN workflow_node.fail_strategy IS '失败策略 1、跳过 2、阻塞'; -COMMENT ON COLUMN workflow_node.workflow_node_status IS '工作流节点状态 0、关闭、1、开启'; -COMMENT ON COLUMN workflow_node.priority_level IS '优先级'; -COMMENT ON COLUMN workflow_node.node_info IS '节点信息'; -COMMENT ON COLUMN workflow_node.version IS '版本号'; -COMMENT ON COLUMN workflow_node.create_dt IS '创建时间'; -COMMENT ON COLUMN workflow_node.update_dt IS '修改时间'; -COMMENT ON COLUMN workflow_node.deleted IS '逻辑删除 1、删除'; -COMMENT ON COLUMN workflow_node.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_workflow_node.id IS '主键'; +COMMENT ON COLUMN sj_workflow_node.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_workflow_node.node_name IS '节点名称'; +COMMENT ON COLUMN sj_workflow_node.group_name IS '组名称'; +COMMENT ON COLUMN sj_workflow_node.job_id IS '任务信息id'; +COMMENT ON COLUMN sj_workflow_node.workflow_id IS '工作流ID'; +COMMENT ON COLUMN sj_workflow_node.node_type IS '1、任务节点 2、条件节点'; +COMMENT ON COLUMN sj_workflow_node.expression_type IS '1、SpEl、2、Aviator 3、QL'; +COMMENT ON COLUMN sj_workflow_node.fail_strategy IS '失败策略 1、跳过 2、阻塞'; +COMMENT ON COLUMN sj_workflow_node.workflow_node_status IS '工作流节点状态 0、关闭、1、开启'; +COMMENT ON COLUMN sj_workflow_node.priority_level IS '优先级'; +COMMENT ON COLUMN sj_workflow_node.node_info IS '节点信息 '; +COMMENT ON COLUMN sj_workflow_node.version IS '版本号'; +COMMENT ON COLUMN sj_workflow_node.ext_attrs IS '扩展字段'; +COMMENT ON COLUMN sj_workflow_node.deleted IS '逻辑删除 1、删除'; +COMMENT ON COLUMN sj_workflow_node.create_dt IS '创建时间'; +COMMENT ON COLUMN sj_workflow_node.update_dt IS '修改时间'; +COMMENT ON TABLE sj_workflow_node IS '工作流节点'; -CREATE TABLE workflow_task_batch +-- sj_workflow_task_batch +CREATE TABLE sj_workflow_task_batch ( - id BIGSERIAL PRIMARY KEY, - namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', - group_name VARCHAR(64) NOT NULL, - workflow_id BIGINT NOT NULL, - task_batch_status SMALLINT NOT NULL DEFAULT 0, - operation_reason SMALLINT NOT NULL DEFAULT 0, - flow_info TEXT DEFAULT NULL, - execution_at BIGINT NOT NULL DEFAULT 0, - create_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - update_dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, - deleted SMALLINT NOT NULL DEFAULT 0, - ext_attrs VARCHAR(256) NULL DEFAULT '' + id bigserial PRIMARY KEY, + namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a', + group_name varchar(64) NOT NULL, + workflow_id bigint NOT NULL, + task_batch_status smallint NOT NULL DEFAULT 0, + operation_reason smallint NOT NULL DEFAULT 0, + flow_info text NULL DEFAULT NULL, + execution_at bigint NOT NULL DEFAULT 0, + ext_attrs varchar(256) NULL DEFAULT '', + deleted smallint NOT NULL DEFAULT 0, + create_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, + update_dt timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ); -CREATE INDEX idx_job_id_task_batch_status_workflow_task_batch ON workflow_task_batch (workflow_id, task_batch_status); -CREATE INDEX idx_create_dt_workflow_task_batch ON workflow_task_batch (create_dt); -CREATE INDEX idx_namespace_id_group_name_workflow_task_batch ON workflow_task_batch (namespace_id, group_name); +CREATE INDEX idx_sj_workflow_task_batch_01 ON sj_workflow_task_batch (workflow_id, task_batch_status); +CREATE INDEX idx_sj_workflow_task_batch_02 ON sj_workflow_task_batch (create_dt); +CREATE INDEX idx_sj_workflow_task_batch_03 ON sj_workflow_task_batch (namespace_id, group_name); + +COMMENT ON COLUMN sj_workflow_task_batch.id IS '主键'; +COMMENT ON COLUMN sj_workflow_task_batch.namespace_id IS '命名空间id'; +COMMENT ON COLUMN sj_workflow_task_batch.group_name IS '组名称'; +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.execution_at IS '任务执行时间'; +COMMENT ON COLUMN sj_workflow_task_batch.ext_attrs 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 '工作流批次'; -COMMENT ON TABLE workflow_task_batch IS '工作流批次'; -COMMENT ON COLUMN workflow_task_batch.id IS '主键'; -COMMENT ON COLUMN workflow_task_batch.namespace_id IS '命名空间id'; -COMMENT ON COLUMN workflow_task_batch.group_name IS '组名称'; -COMMENT ON COLUMN workflow_task_batch.workflow_id IS '工作流任务id'; -COMMENT ON COLUMN workflow_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功'; -COMMENT ON COLUMN workflow_task_batch.operation_reason IS '操作原因'; -COMMENT ON COLUMN workflow_task_batch.flow_info IS '流程信息'; -COMMENT ON COLUMN workflow_task_batch.execution_at IS '任务执行时间'; -COMMENT ON COLUMN workflow_task_batch.create_dt IS '创建时间'; -COMMENT ON COLUMN workflow_task_batch.update_dt IS '修改时间'; -COMMENT ON COLUMN workflow_task_batch.deleted IS '逻辑删除 1、删除'; -COMMENT ON COLUMN workflow_task_batch.ext_attrs IS '扩展字段'; diff --git a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobLogMessageMapper.xml b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobLogMessageMapper.xml index cc9d0a72d..254fb70f3 100644 --- a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobLogMessageMapper.xml +++ b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobLogMessageMapper.xml @@ -17,7 +17,7 @@ - INSERT INTO job_log_message + INSERT INTO sj_job_log_message ( namespace_id, group_name, diff --git a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobMapper.xml b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobMapper.xml index b6268c607..df642b30d 100644 --- a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobMapper.xml +++ b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobMapper.xml @@ -27,16 +27,16 @@ - UPDATE job AS rt - SET next_trigger_at = tt.next_trigger_at - FROM ( - - select - #{item.nextTriggerAt} as next_trigger_at, - #{item.id} as id - - ) AS tt - WHERE rt.id = tt.id + UPDATE sj_job AS rt + SET next_trigger_at = tt.next_trigger_at + FROM ( + + select + #{item.nextTriggerAt} as next_trigger_at, + #{item.id} as id + + ) AS tt + WHERE rt.id = tt.id diff --git a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobSummaryMapper.xml b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobSummaryMapper.xml index 197a65a98..58d887a92 100644 --- a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobSummaryMapper.xml +++ b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/JobSummaryMapper.xml @@ -20,7 +20,7 @@ - INSERT INTO job_summary (namespace_id, group_name, business_id, trigger_at, system_task_type, + INSERT INTO sj_job_summary (namespace_id, group_name, business_id, trigger_at, system_task_type, success_num,fail_num,fail_reason,stop_num,stop_reason, cancel_num,cancel_reason) VALUES @@ -42,7 +42,7 @@ - UPDATE job_summary AS rt + UPDATE sj_job_summary AS rt SET success_num = tt.success_num, fail_num = tt.fail_num, fail_reason = tt.fail_reason, @@ -78,7 +78,7 @@ COALESCE(SUM(cancel_num), 0) AS cancel, COALESCE(SUM(fail_num + stop_num + cancel_num), 0) AS fail, COALESCE(SUM(success_num + fail_num + stop_num + cancel_num), 0) AS total - FROM job_summary + FROM sj_job_summary ${ew.customSqlSegment} GROUP BY createDt @@ -90,7 +90,7 @@ COALESCE(sum(cancel_num), 0) AS cancelNum, COALESCE(sum(fail_num), 0) AS failNum, COALESCE(sum(success_num + fail_num + stop_num + cancel_num), 0) AS totalNum - FROM job_summary + FROM sj_job_summary ${ew.customSqlSegment} @@ -98,13 +98,13 @@ resultType="com.aizuda.snailjob.template.datasource.persistence.dataobject.DashboardRetryLineResponseDO$Rank"> SELECT - CONCAT(group_name, '/', (SELECT job_name FROM job WHERE id = business_id)) name, + CONCAT(group_name, '/', (SELECT job_name FROM sj_job WHERE id = business_id)) name, - CONCAT(group_name, '/', (SELECT workflow_name FROM workflow WHERE id = business_id)) name, + CONCAT(group_name, '/', (SELECT workflow_name FROM sj_workflow WHERE id = business_id)) name, SUM(fail_num) AS total - FROM job_summary + FROM sj_job_summary ${ew.customSqlSegment} HAVING SUM(fail_num) > 0 ORDER BY total DESC LIMIT 10 @@ -115,7 +115,7 @@ SELECT group_name AS groupName, SUM(CASE WHEN (job_status = 1) THEN 1 ELSE 0 END) AS run, count(*) AS total - FROM job + FROM sj_job ${ew.customSqlSegment} GROUP BY namespace_id, group_name diff --git a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryDeadLetterMapper.xml b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryDeadLetterMapper.xml index 0f75ca32f..88c6cf795 100644 --- a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryDeadLetterMapper.xml +++ b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryDeadLetterMapper.xml @@ -19,21 +19,22 @@ id, namespace_id, unique_id, group_name, scene_name, idempotent_id, biz_no, executor_name, args_str, ext_attrs, create_dt, task_type - insert into retry_dead_letter (namespace_id, unique_id, group_name, scene_name, - idempotent_id, biz_no, executor_name, args_str, - ext_attrs, create_dt - ) - values + INSERT INTO sj_retry_dead_letter (namespace_id, unique_id, group_name, scene_name, + idempotent_id, biz_no, executor_name, args_str, + ext_attrs, create_dt) + VALUES - (#{retryDeadLetter.namespaceId,jdbcType=VARCHAR}, #{retryDeadLetter.uniqueId,jdbcType=VARCHAR}, #{retryDeadLetter.groupName,jdbcType=VARCHAR}, #{retryDeadLetter.sceneName,jdbcType=VARCHAR}, + ( + #{retryDeadLetter.namespaceId,jdbcType=VARCHAR}, #{retryDeadLetter.uniqueId,jdbcType=VARCHAR}, + #{retryDeadLetter.groupName,jdbcType=VARCHAR}, #{retryDeadLetter.sceneName,jdbcType=VARCHAR}, #{retryDeadLetter.idempotentId,jdbcType=VARCHAR}, #{retryDeadLetter.bizNo,jdbcType=VARCHAR}, #{retryDeadLetter.executorName,jdbcType=VARCHAR}, #{retryDeadLetter.argsStr,jdbcType=VARCHAR}, #{retryDeadLetter.extAttrs,jdbcType=VARCHAR}, #{retryDeadLetter.createDt,jdbcType=TIMESTAMP}) diff --git a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetrySummaryMapper.xml b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetrySummaryMapper.xml index 99aa1f174..c1396d1fe 100644 --- a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetrySummaryMapper.xml +++ b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetrySummaryMapper.xml @@ -16,7 +16,7 @@ - INSERT INTO retry_summary (namespace_id, group_name, scene_name, trigger_at, + INSERT INTO sj_retry_summary (namespace_id, group_name, scene_name, trigger_at, running_num, finish_num, max_count_num, suspend_num) VALUES @@ -34,7 +34,7 @@ - UPDATE retry_summary AS rt + UPDATE sj_retry_summary AS rt SET running_num = tt.running_num, finish_num = tt.finish_num, max_count_num = tt.max_count_num, @@ -65,7 +65,7 @@ COALESCE(sum(max_count_num), 0) AS maxCountNum, COALESCE(sum(suspend_num), 0) AS suspendNum, COALESCE(sum(running_num + finish_num + max_count_num + suspend_num), 0) AS totalNum - FROM retry_summary + FROM sj_retry_summary ${ew.customSqlSegment} @@ -73,7 +73,7 @@ resultType="com.aizuda.snailjob.template.datasource.persistence.dataobject.DashboardCardResponseDO$RetryTask"> SELECT trigger_at, running_num, finish_num, max_count_num, suspend_num - FROM retry_summary + FROM sj_retry_summary ${ew.customSqlSegment} LIMIT 7 @@ -87,7 +87,7 @@ COALESCE(SUM(max_count_num), 0) AS maxCountNum, COALESCE(SUM(suspend_num), 0) AS suspendNum, COALESCE(SUM(finish_num + running_num + max_count_num + suspend_num), 0) AS total - FROM retry_summary + FROM sj_retry_summary ${ew.customSqlSegment} GROUP BY createDt @@ -97,7 +97,7 @@ SELECT CONCAT(group_name, '/', scene_name) name, SUM(running_num + finish_num + max_count_num + suspend_num) AS total - FROM retry_summary + FROM sj_retry_summary ${ew.customSqlSegment} HAVING SUM(running_num + finish_num + max_count_num + suspend_num) > 0 ORDER BY total DESC LIMIT 10 @@ -106,9 +106,9 @@ diff --git a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryTaskLogMapper.xml b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryTaskLogMapper.xml index 28c825d13..54cef146d 100644 --- a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryTaskLogMapper.xml +++ b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryTaskLogMapper.xml @@ -23,7 +23,7 @@ - INSERT INTO retry_task_log (unique_id, group_name, scene_name, idempotent_id, biz_no, executor_name, + INSERT INTO sj_retry_task_log (unique_id, group_name, scene_name, idempotent_id, biz_no, executor_name, args_str, ext_attrs, task_type, create_dt, namespace_id) VALUES @@ -43,7 +43,7 @@ SUM(CASE WHEN (retry_status = 1) THEN 1 ELSE 0 END) AS finishNum, SUM(CASE WHEN (retry_status = 2) THEN 1 ELSE 0 END) AS maxCountNum, SUM(CASE WHEN (retry_status = 3) THEN 1 ELSE 0 END) AS suspendNum - FROM retry_task_log + FROM sj_retry_task_log ${ew.customSqlSegment} diff --git a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryTaskLogMessageMapper.xml b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryTaskLogMessageMapper.xml index 608cb6eda..22ae647d6 100644 --- a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryTaskLogMessageMapper.xml +++ b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryTaskLogMessageMapper.xml @@ -12,7 +12,7 @@ - INSERT INTO retry_task_log_message (namespace_id, group_name, unique_id, log_num, message, + INSERT INTO sj_retry_task_log_message (namespace_id, group_name, unique_id, log_num, message, create_dt, real_time) VALUES @@ -29,7 +29,7 @@ - UPDATE retry_task_log_message jlm, + UPDATE sj_retry_task_log_message jlm, ( SELECT diff --git a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryTaskMapper.xml b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryTaskMapper.xml index 628ceb6a3..89fd8334e 100644 --- a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryTaskMapper.xml +++ b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/RetryTaskMapper.xml @@ -1,46 +1,56 @@ - - - - - - - - - - - - - - - - - - - - id, namespace_id, unique_id, group_name, scene_name, idempotent_id, biz_no, executor_name, args_str, ext_attrs, next_trigger_at, retry_count, retry_status, - create_dt, update_dt, task_type - - - - INSERT INTO retry_task (namespace_id, unique_id, group_name, scene_name, idempotent_id, biz_no, executor_name, args_str, ext_attrs, next_trigger_at, task_type, retry_status, create_dt) - VALUES - - (#{item.namespaceId}, #{item.uniqueId}, #{item.groupName}, #{item.sceneName}, #{item.idempotentId}, #{item.bizNo}, #{item.executorName}, #{item.argsStr}, #{item.extAttrs}, #{item.nextTriggerAt}, #{item.taskType}, #{item.retryStatus}, #{item.createDt}) - - - - UPDATE retry_task_${partition} AS rt - SET next_trigger_at = tt.next_trigger_at - FROM ( - - select - #{item.nextTriggerAt} as next_trigger_at, - #{item.id} as id - - ) AS tt - WHERE rt.id = tt.id - + + + + + + + + + + + + + + + + + + + + + id, namespace_id, unique_id, group_name, scene_name, idempotent_id, biz_no, + executor_name, args_str, ext_attrs, next_trigger_at, retry_count, retry_status, + create_dt, update_dt, task_type + + + + + INSERT INTO sj_retry_task (namespace_id, unique_id, group_name, scene_name, + idempotent_id, biz_no, executor_name, args_str, ext_attrs, + next_trigger_at, task_type, retry_status, create_dt) + VALUES + + ( + #{item.namespaceId}, #{item.uniqueId}, #{item.groupName}, + #{item.sceneName}, #{item.idempotentId}, #{item.bizNo}, #{item.executorName}, #{item.argsStr}, + #{item.extAttrs}, #{item.nextTriggerAt}, #{item.taskType}, #{item.retryStatus}, #{item.createDt} + ) + + + + + UPDATE sj_retry_task_${partition} AS rt + SET next_trigger_at = tt.next_trigger_at + FROM ( + + SELECT + #{item.nextTriggerAt} AS next_trigger_at, + #{item.id} AS id + + ) AS tt + WHERE rt.id = tt.id + diff --git a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/ServerNodeMapper.xml b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/ServerNodeMapper.xml index 80c8e5e5b..fb4108448 100644 --- a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/ServerNodeMapper.xml +++ b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/ServerNodeMapper.xml @@ -18,7 +18,7 @@ - INSERT INTO server_node (namespace_id, group_name, host_id, host_ip, host_port, + INSERT INTO sj_server_node (namespace_id, group_name, host_id, host_ip, host_port, expire_at, node_type, ext_attrs, create_dt) VALUES @@ -37,7 +37,7 @@ - UPDATE server_node AS rt + UPDATE sj_server_node AS rt SET expire_at = tt.expire_at FROM ( @@ -54,7 +54,7 @@ diff --git a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/WorkflowMapper.xml b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/WorkflowMapper.xml index 877853964..39c2e9526 100644 --- a/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/WorkflowMapper.xml +++ b/snail-job-datasource/snail-job-postgres-datasource/src/main/resources/postgresql/mapper/WorkflowMapper.xml @@ -16,16 +16,16 @@ - UPDATE workflow AS rt - SET next_trigger_at = tt.next_trigger_at - FROM ( - - select - #{item.nextTriggerAt} as next_trigger_at, - #{item.id} as id - - ) AS tt - WHERE rt.id = tt.id + UPDATE sj_workflow AS rt + SET next_trigger_at = tt.next_trigger_at + FROM ( + + SELECT + #{item.nextTriggerAt} AS next_trigger_at, + #{item.id} AS id + + ) AS tt + WHERE rt.id = tt.id