chore(ops): restore-дрель для базы tradein — она не покрывалась вовсе
All checks were successful
CI Trade-In / changes (pull_request) Successful in 8s
CI / changes (pull_request) Successful in 10s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI Trade-In / browser-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
All checks were successful
CI Trade-In / changes (pull_request) Successful in 8s
CI / changes (pull_request) Successful in 10s
CI Trade-In / backend-tests (pull_request) Has been skipped
CI Trade-In / browser-tests (pull_request) Has been skipped
CI Trade-In / frontend-checks (pull_request) Has been skipped
CI / backend-tests (pull_request) Has been skipped
CI / frontend-tests (pull_request) Has been skipped
CI / openapi-codegen-check (pull_request) Has been skipped
Дрель восстановления стоит в cron с #3085, но её строка берёт только `gendesign_*`. База tradein — клиентские оценки, листинги, дома, сделки — автоматически на восстановимость не проверялась ни разу: дампы снимались, уезжали в S3, и никто не знал, разворачиваются ли они. Сам `ops/restore-drill.sh` менять не пришлось — он с самого начала умеет оба проекта: находит globals по своей схеме имён (`tradein-globals-<ts>`), подставляет свой список таблиц для сверки. Не хватало ровно строки в cron. Прогнал на боевом дампе 27.08 перед тем, как добавлять (оповещение заглушено, чтобы не слать ложную тревогу): tradein-20260827-111102.sql.gz, 343 МБ → 58 c GRANT-ы применены, материализованные представления обновлены PostGIS 3.4.3, таблиц в public: 76 listings 109978 · listing_sources 106704 · deals 108623 houses 10400 · trade_in_estimates 1121 Сверка с боевой базой: houses, listings, deals, osm_poi сходятся точно; trade_in_estimates и user_events больше на проде ровно на строки, созданные ПОСЛЕ снятия дампа. То есть дамп верен. Еженедельно, а не раз в месяц: две минуты работы против месяца, в течение которого битый дамп остаётся незамеченным. Понедельник 03:00 — после дрели gendesign (02:15 первого числа) и до ночных бэкапов в 03:30.
This commit is contained in:
parent
46c3e7e1d7
commit
ec6181b7b3
1 changed files with 13 additions and 0 deletions
|
|
@ -49,6 +49,19 @@
|
|||
# трогает никогда (см. заголовок скрипта).
|
||||
15 2 1 * * bash -c 'f=$(ls -t /opt/gendesign/backups/gendesign_[0-9]*.sql.gz 2>/dev/null | head -1); if [ -n "$f" ]; then bash /opt/gendesign/ops/restore-drill.sh "$f"; else echo "no gendesign dump found to drill"; exit 1; fi' >> /opt/gendesign/logs/restore-drill.log 2>&1
|
||||
|
||||
# Та же дрель для базы tradein — она НЕ покрывалась строкой выше (#2203).
|
||||
# Строка выше берёт только `gendesign_*`, то есть восстановимость базы
|
||||
# клиентских оценок автоматически не проверялась вовсе: ни листинги, ни дома,
|
||||
# ни сами оценки. Замер 27.08: дамп 343 МБ разворачивается за 58 c и сходится
|
||||
# с боевой базой построчно (houses 10400, listings 109978, deals 108623 —
|
||||
# расхождения только по строкам, созданным ПОСЛЕ снятия дампа).
|
||||
#
|
||||
# Еженедельно, а не раз в месяц: две минуты работы против месяца, в течение
|
||||
# которого битый дамп остаётся незамеченным. Понедельник 03:00 — после
|
||||
# монтажной дрели gendesign (02:15 первого числа, ей хватает форы даже когда
|
||||
# первое выпадает на понедельник) и до ночных бэкапов в 03:30.
|
||||
0 3 * * 1 bash -c 'f=$(ls -t /opt/gendesign/backups/tradein/tradein-[0-9]*.sql.gz 2>/dev/null | head -1); if [ -n "$f" ]; then bash /opt/gendesign/ops/restore-drill.sh "$f"; else echo "no tradein dump found to drill"; exit 1; fi' >> /opt/gendesign/logs/restore-drill.log 2>&1
|
||||
|
||||
# ── Обогащение и геокодирование (ходят в tradein-backend) ───────────────────
|
||||
0 5 * * * cd /opt/gendesign/tradein-mvp && docker exec tradein-backend python -m scripts.backfill_houses_dadata --limit 100 --priority both >> /opt/gendesign/logs/dadata-backfill.log 2>&1
|
||||
30 5 * * * cd /opt/gendesign/tradein-mvp && docker exec tradein-backend python -m scripts.geocode_deals_from_houses --limit 50000 >> /opt/gendesign/logs/deals-geocode.log 2>&1
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue