mirror of
http://git.pig4cloud.com/pig/pigx.git
synced 2026-11-08 04:39:00 +08:00
28 lines
2.0 KiB
SQL
28 lines
2.0 KiB
SQL
-- 第一批持久化能力:三张业务表。已安装旧五表版本时,建表后另执行 20261014_flow_merge_tables.sql。
|
|
-- 升级前备份并停写,先执行 DDL 再部署应用;不自动迁移运行中的任务。
|
|
CREATE TABLE IF NOT EXISTS flow_draft (
|
|
id varchar(36) NOT NULL, tenant_id bigint NOT NULL, user_id bigint NOT NULL,
|
|
kind varchar(16) NOT NULL, flow_id varchar(64) NOT NULL DEFAULT '', title varchar(200) NOT NULL,
|
|
payload longtext NOT NULL, revision bigint NOT NULL, updated_at timestamp(3) NOT NULL,
|
|
PRIMARY KEY(id), KEY idx_draft_owner(tenant_id,user_id,kind,updated_at)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
CREATE TABLE IF NOT EXISTS flow_notice (
|
|
id varchar(36) NOT NULL, tenant_id bigint NOT NULL, user_id varchar(64) NOT NULL,
|
|
event_key varchar(180) NOT NULL, kind varchar(16) NOT NULL, title varchar(200) NOT NULL,
|
|
task_id varchar(64) NOT NULL, instance_id varchar(64) NOT NULL,
|
|
created_at timestamp(3) NOT NULL, read_at timestamp(3) NULL,
|
|
status varchar(16) NOT NULL DEFAULT 'SENT', scheduled_at timestamp(3) NULL, sent_at timestamp(3) NULL,
|
|
reminder_key varchar(64) NULL,
|
|
PRIMARY KEY(id), UNIQUE KEY uk_notice_event(tenant_id,user_id,event_key), KEY idx_notice_owner(tenant_id,user_id,created_at),
|
|
UNIQUE KEY uk_notice_reminder(tenant_id,reminder_key), KEY idx_notice_due(status,scheduled_at)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
|
CREATE TABLE IF NOT EXISTS flow_callback (
|
|
id varchar(36) NOT NULL, tenant_id bigint NOT NULL, task_id varchar(64) NOT NULL,
|
|
instance_id varchar(64) NOT NULL, target_url varchar(2000) NOT NULL, payload longtext NOT NULL,
|
|
status varchar(16) NOT NULL, attempts int NOT NULL DEFAULT 0, max_attempts int NOT NULL DEFAULT 5, next_at timestamp(3) NOT NULL,
|
|
history longtext NULL,
|
|
lease_token varchar(36) NULL, lease_until timestamp(3) NULL, last_error varchar(500) NULL,
|
|
created_at timestamp(3) NOT NULL, updated_at timestamp(3) NOT NULL,
|
|
PRIMARY KEY(id), UNIQUE KEY uk_callback_task(tenant_id,task_id), KEY idx_callback_due(status,next_at)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|