diff --git a/tradein-mvp/backend/data/sql/301_web_support_message_idempotency_key.sql b/tradein-mvp/backend/data/sql/301_web_support_message_idempotency_key.sql index 40b6771b..774a5bd3 100644 --- a/tradein-mvp/backend/data/sql/301_web_support_message_idempotency_key.sql +++ b/tradein-mvp/backend/data/sql/301_web_support_message_idempotency_key.sql @@ -30,6 +30,12 @@ BEGIN; +-- Блокирующий DDL не должен ждать чужую сессию бесконечно: без этого +-- ALTER встаёт в очередь за долгим запросом и уводит за собой ВСЕ +-- последующие обращения к таблице (#2752). Пять секунд — не успел взять +-- лок, деплой падает честно, а прод продолжает работать. +SET LOCAL lock_timeout = '5s'; + ALTER TABLE web_support_messages ADD COLUMN IF NOT EXISTS idempotency_key text;