fix(data): партиции rosreestr_deals на Q2–Q4 2026 + загрузчик доходит до файла (#2998) #3014
No reviewers
Labels
No labels
Fable 5 ревью
GG-форсайт
admin
analytics
auth
automation
bug
business
chore
ci
compliance
data
data-moat
docs
duplicate
dx
enhancement
feedback/max
generative
needs-discussion
needs-human
observability
pause-bots
performance
priority/p0
priority/p1
priority/p2
priority/p3
scope/backend
scope/db
scope/devops
scope/frontend
scope/qa
scrapers
security
site-finder
stage/1
stage/2
status/blocked
status/done
status/needs-analysis
status/needs-fix
status/qa
status/ready
status/review
status/wip
tech-debt
tradein
ux
week ревью 1
wontfix
ИРД
вторичка
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: lekss361/gendesign#3014
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "fix/2998-rosreestr-q2-partitions"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Диагноз задачи был неверным в причине; настоящий корень — структурный
Подробный разбор — в комментарии к #2998. Коротко:
rosreestr_dkp_importежедневно вычитывает все 96 974 строки FDW-источника и честно пропускает (rows_fetched = rows_skipped = 96974).total_seen— поле админ-витрины, не счётчик импорта.rosreestr_quarter_pollзаметил его 14.08 (available=1),deals_freshness_monitorс 16.08 ставилalert=1ежедневно. Семь событий в GlitchTip — 0 правил, 0 адресатов, 0 отправок.rosreestr_dealsпартиционирована поperiod_start_date, партиции созданы списком в01_schema«2024 Q3 — 2026 Q1», и ничто новые не создаёт. Загрузка Q2 21.08 упала:Даже оператор, запустив загрузчик по подсказке poll, получил бы отказ.
Что в PR
193_partitions_rosreestr_2026_q2_q4.sql— партиции Q2–Q4 2026 с запасом,IF NOT EXISTS,lock_timeout. Индексы не перечисляю — наследуются от родителя (проверено на проде: 4 на2026q2).02_load_all_quarters.sh— две правки:JOBSдополнен 2026Q2–Q4 (квартал без CSV честноSKIP).set -e:resolve_csvсигналит «файла нет» кодом 1, и первый же квартал без CSV молча ронял весь прогон до строкиSKIP. На проде с одним Q2-файлом вdata/rawскрипт завершалсяrc=0, не напечатав ни строки — поймал при боевой проверке.|| trueна вызове.test_2998_rosreestr_partition_horizon.py— сторож, чтобы горизонт не отстал снова. Партиция обязана существовать на последний публикуемый квартал (+20 дней лага: Q2 2026 вышел 10.07) и на следующий — иначе предупреждение придёт в день публикации, когда дамп уже лежит и его уже нельзя загрузить.Как проверено
rosreestr_deals(ЕКБ-фильтр 13 654),import-rosreestr.sh→tradein.deals+11 649,max(deal_date)2026-01-01 → 2026-04-01.deals_freshness_monitorна следующем тике:alert 0, latest_quarter 2— цикл замкнулся.2026Q2 SKIP — уже загружен (741874 строк), остальныеSKIP — нет CSV,rc=0. До правки — пустой вывод,rc=0.DETACH PARTITION→ головная проверка краснеет по значению («нет партиции на квартал 2026-04-01»), откат возвращает партицию. После теста на проде 12 партиций, 741 874 строки Q2 — цел.pytest backend/tests/sql— 55 passed через туннель к проду.Что остаётся вне PR