From 99757c63708e091b59e8317525c3a1e5e48d79f0 Mon Sep 17 00:00:00 2001 From: bot-backend Date: Tue, 4 Aug 2026 18:42:22 +0000 Subject: [PATCH] fix(sql): re-grant mv_quarter_price_index to tradein_fdw_reader (C3, #2583) (#2641) --- .../179_mv_quarter_price_cadastral_floor.sql | 4 ++++ .../188_regrant_quarter_price_index_fdw.sql | 22 +++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 data/sql/188_regrant_quarter_price_index_fdw.sql diff --git a/data/sql/179_mv_quarter_price_cadastral_floor.sql b/data/sql/179_mv_quarter_price_cadastral_floor.sql index 12c689da..e68224f4 100644 --- a/data/sql/179_mv_quarter_price_cadastral_floor.sql +++ b/data/sql/179_mv_quarter_price_cadastral_floor.sql @@ -220,4 +220,8 @@ COMMENT ON MATERIALIZED VIEW mv_quarter_price_index IS 'Consumer: estimator service (#647-3) reads O(1) by quarter_cad_number. ' 'Issue: #760.'; +-- C3 (#2583): DROP CASCADE выше уносит грант из 99b — без ре-гранта tradein FDW +-- (quarter_price_index, роль tradein_fdw_reader) ловит permission denied. +GRANT SELECT ON public.mv_quarter_price_index TO tradein_fdw_reader; + COMMIT; diff --git a/data/sql/188_regrant_quarter_price_index_fdw.sql b/data/sql/188_regrant_quarter_price_index_fdw.sql new file mode 100644 index 00000000..b85dcd25 --- /dev/null +++ b/data/sql/188_regrant_quarter_price_index_fdw.sql @@ -0,0 +1,22 @@ +-- 188_regrant_quarter_price_index_fdw.sql +-- C3 (#2583): tradein-эстиматор потерял квартальный индекс 2026-07-05. +-- +-- Причина: 179_mv_quarter_price_cadastral_floor.sql делает +-- DROP MATERIALIZED VIEW mv_quarter_price_index CASCADE; CREATE ... +-- DROP+CREATE не сохраняет гранты — GRANT из 99b_grant_quarter_price_index_fdw.sql +-- пропал, и tradein-сторона (foreign table quarter_price_index, роль +-- tradein_fdw_reader) с 05.07 получала: +-- permission denied for materialized view mv_quarter_price_index +-- +-- Симптом «не выполняется с 5 июля» — это дата применения 179, а не поломка +-- рефреша: REFRESH MATERIALIZED VIEW (beat: 05:00 МСК 5-го числа) гранты не трогает. +-- +-- Применено вживую на прод 2026-08-04 (FDW-чтение проверено: 1894 строки). +-- Этот файл — идемпотентное закрепление. Парный фикс: GRANT дописан в конец 179, +-- чтобы повторное применение 179 больше не теряло грант. + +BEGIN; + +GRANT SELECT ON public.mv_quarter_price_index TO tradein_fdw_reader; + +COMMIT;