init push
This commit is contained in:
33
migrations/20260405_file_processing_outbox.sql
Normal file
33
migrations/20260405_file_processing_outbox.sql
Normal file
@@ -0,0 +1,33 @@
|
||||
-- +goose Up
|
||||
CREATE TABLE IF NOT EXISTS file_processing_outbox_messages (
|
||||
id BINARY(16) NOT NULL,
|
||||
message_id VARCHAR(64) NOT NULL,
|
||||
kind VARCHAR(64) NOT NULL,
|
||||
job_type VARCHAR(64) NOT NULL,
|
||||
body LONGBLOB NOT NULL,
|
||||
attributes LONGBLOB NULL,
|
||||
message_group_id VARCHAR(128) NULL,
|
||||
deduplication_id VARCHAR(128) NULL,
|
||||
status VARCHAR(32) NOT NULL DEFAULT 'pending',
|
||||
attempts INT NOT NULL DEFAULT 0,
|
||||
available_at DATETIME(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
|
||||
locked_at DATETIME(6) NULL,
|
||||
locked_by VARCHAR(64) NULL,
|
||||
published_at DATETIME(6) NULL,
|
||||
last_error TEXT NULL,
|
||||
correlation_id VARCHAR(64) NULL,
|
||||
trace_id VARCHAR(64) NULL,
|
||||
created_at DATETIME(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6),
|
||||
updated_at DATETIME(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6),
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE KEY uq_file_processing_outbox_message_id (message_id),
|
||||
KEY idx_file_processing_outbox_status_available (status, available_at),
|
||||
KEY idx_file_processing_outbox_locked_at (locked_at),
|
||||
KEY idx_file_processing_outbox_kind (kind),
|
||||
KEY idx_file_processing_outbox_job_type (job_type),
|
||||
KEY idx_file_processing_outbox_correlation (correlation_id),
|
||||
KEY idx_file_processing_outbox_trace (trace_id)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
-- +goose Down
|
||||
DROP TABLE IF EXISTS file_processing_outbox_messages;
|
||||
Reference in New Issue
Block a user