36 lines
2.1 KiB
SQL
36 lines
2.1 KiB
SQL
CREATE TABLE IF NOT EXISTS `task_center_event_dedup` (
|
|
`id` bigint NOT NULL COMMENT '主键ID',
|
|
`sys_origin` varchar(32) NOT NULL COMMENT '来源系统',
|
|
`event_id` varchar(128) NOT NULL COMMENT '业务事件ID',
|
|
`event_type` varchar(64) NOT NULL COMMENT '事件类型',
|
|
`user_id` bigint NOT NULL COMMENT '用户ID',
|
|
`status` varchar(32) NOT NULL COMMENT '处理状态',
|
|
`failure_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因',
|
|
`create_time` datetime(3) DEFAULT NULL COMMENT '创建时间',
|
|
`update_time` datetime(3) DEFAULT NULL COMMENT '更新时间',
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `uk_task_center_event_dedup` (`sys_origin`, `event_id`),
|
|
KEY `idx_task_center_event_dedup_status` (`status`),
|
|
KEY `idx_task_center_event_dedup_create_time` (`create_time`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='任务中心事件幂等表';
|
|
|
|
CREATE TABLE IF NOT EXISTS `task_center_event_archive_outbox` (
|
|
`id` bigint NOT NULL COMMENT '主键ID',
|
|
`sys_origin` varchar(32) NOT NULL COMMENT '来源系统',
|
|
`event_id` varchar(128) NOT NULL COMMENT '业务事件ID',
|
|
`event_type` varchar(64) NOT NULL COMMENT '事件类型',
|
|
`user_id` bigint NOT NULL COMMENT '用户ID',
|
|
`occurred_at` datetime(3) DEFAULT NULL COMMENT '业务发生时间',
|
|
`raw_json` text NOT NULL COMMENT '待归档原始事件JSON',
|
|
`status` varchar(32) NOT NULL DEFAULT 'PENDING' COMMENT '归档状态',
|
|
`retry_count` int NOT NULL DEFAULT '0' COMMENT '重试次数',
|
|
`cos_key` varchar(512) NOT NULL DEFAULT '' COMMENT 'COS对象Key',
|
|
`failure_reason` varchar(512) NOT NULL DEFAULT '' COMMENT '失败原因',
|
|
`create_time` datetime(3) DEFAULT NULL COMMENT '创建时间',
|
|
`update_time` datetime(3) DEFAULT NULL COMMENT '更新时间',
|
|
`archived_at` datetime(3) DEFAULT NULL COMMENT '归档完成时间',
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `uk_task_center_archive_event` (`sys_origin`, `event_id`),
|
|
KEY `idx_task_center_archive_status_time` (`status`, `create_time`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='任务中心事件COS归档Outbox';
|