recurrents
This commit is contained in:
19
src/main/resources/db/migration/V27__.sql
Normal file
19
src/main/resources/db/migration/V27__.sql
Normal file
@@ -0,0 +1,19 @@
|
||||
-- Очередь классификации категорий
|
||||
CREATE TABLE IF NOT EXISTS finance.category_jobs (
|
||||
id BIGSERIAL PRIMARY KEY,
|
||||
tx_id INT NOT NULL UNIQUE, -- одна задача на транзакцию
|
||||
status TEXT NOT NULL DEFAULT 'NEW', -- NEW | PROCESSING | DONE | FAILED
|
||||
attempts INT NOT NULL DEFAULT 0,
|
||||
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
||||
started_at TIMESTAMPTZ,
|
||||
finished_at TIMESTAMPTZ,
|
||||
last_error TEXT
|
||||
);
|
||||
|
||||
-- Быстрые выборки по статусу
|
||||
CREATE INDEX IF NOT EXISTS ix_category_jobs_status ON finance.category_jobs(status);
|
||||
|
||||
-- (опционально) защита от «зависших» задач
|
||||
CREATE INDEX IF NOT EXISTS ix_category_jobs_processing_time
|
||||
ON finance.category_jobs(started_at)
|
||||
WHERE status = 'PROCESSING';
|
||||
Reference in New Issue
Block a user