diff --git a/tradein-mvp/backend/data/sql/269_houses_yandex_jk_resolve_tried_at.sql b/tradein-mvp/backend/data/sql/269_houses_yandex_jk_resolve_tried_at.sql index 4d696b4f..e2ce5e2c 100644 --- a/tradein-mvp/backend/data/sql/269_houses_yandex_jk_resolve_tried_at.sql +++ b/tradein-mvp/backend/data/sql/269_houses_yandex_jk_resolve_tried_at.sql @@ -8,6 +8,10 @@ -- очереди (ORDER BY tried_at NULLS FIRST), а не в начало. -- -- Идемпотентно. Колонка nullable, без дефолта — существующие строки = «не пробовали». +-- lock_timeout (#2752): ALTER TABLE берёт ACCESS EXCLUSIVE на houses — при живом +-- писателе (свип) ждал бы его бесконечно и копил очередь за собой; 5с — и миграция +-- падает честно, деплой перезапускается, а не вешает базу. +SET LOCAL lock_timeout = '5s'; ALTER TABLE houses ADD COLUMN IF NOT EXISTS yandex_jk_resolve_tried_at timestamptz; COMMENT ON COLUMN houses.yandex_jk_resolve_tried_at IS '#2924: когда yandex_newbuilding_sweep последний раз пытался разрезолвить yandex_jk_slug и не смог; NULL = не пробовали или резолв удался';