23 lines
829 B
MySQL
23 lines
829 B
MySQL
|
|
CREATE TABLE IF NOT EXISTS `Message_Outbox` (
|
||
|
|
`Id` bigint NOT NULL,
|
||
|
|
`Exchange` varchar(200) NOT NULL,
|
||
|
|
`Queue` varchar(200) NOT NULL,
|
||
|
|
`RoutingKey` varchar(200) NOT NULL,
|
||
|
|
`Payload` json NOT NULL,
|
||
|
|
`RetryCount` int NOT NULL DEFAULT 0,
|
||
|
|
`NextRetryAt` datetime NULL,
|
||
|
|
`SentAt` datetime NULL,
|
||
|
|
`LastError` varchar(2000) NULL,
|
||
|
|
`BusinessType` varchar(100) NOT NULL,
|
||
|
|
`BusinessId` bigint NOT NULL,
|
||
|
|
`Status` int NOT NULL DEFAULT 0,
|
||
|
|
`IsDeleted` bit NOT NULL DEFAULT b'0',
|
||
|
|
`CreatedBy` varchar(100) NOT NULL,
|
||
|
|
`CreatedAt` datetime NOT NULL,
|
||
|
|
`UpdatedBy` varchar(100) NULL,
|
||
|
|
`UpdatedAt` datetime NULL,
|
||
|
|
PRIMARY KEY (`Id`),
|
||
|
|
KEY `idx_message_outbox_status_next_retry` (`Status`, `NextRetryAt`, `CreatedAt`),
|
||
|
|
KEY `idx_message_outbox_business` (`BusinessType`, `BusinessId`)
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|