docs(testing): интеграционная проверка не живёт постоянной целью
- Зачем:
- проверка, которая кормит стенд данными, оставляет их в мире менти
навсегда: у ODS срока хранения нет, и события, которых мир не рождал,
неотличимы в лабах от настоящих. Решение принято при разборе постановок
#41 и #43, чтобы оно решалось по карте, а не заново в каждом тикете.
- Что:
- добавлен раздел «Интеграционная проверка постоянной целью не становится»:
такой прогон делается один раз при исполнении, след — запись в теле PR.
- названо требование прибираться за собой и дешёвый способ это сделать:
модельный день за границей оси мира и снос его партиции.
- названо, что стережёт цепочку постоянно вместо неё — проверки на
настоящих данных, которые стенд произвёл сам.
- Проверка:
- make config-test
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -96,6 +96,31 @@ ClickHouse отвечает сразу.
|
|||||||
посмотрите, покраснеет ли прогон и назовёт ли виновника. Не покраснел —
|
посмотрите, покраснеет ли прогон и назовёт ли виновника. Не покраснел —
|
||||||
проверка не работает, и чинить надо её, а не стенд.
|
проверка не работает, и чинить надо её, а не стенд.
|
||||||
|
|
||||||
|
## Интеграционная проверка постоянной целью не становится
|
||||||
|
|
||||||
|
Проверка, которая не спрашивает стенд, а **кормит** его — шлёт сообщения,
|
||||||
|
вставляет строки, портит данные нарочно, — постоянной целью `make` не живёт.
|
||||||
|
Такую проверку гоняют один раз при исполнении, убеждаются, что механизм
|
||||||
|
работает, и оставляют след записью в теле PR. Регулярная жизнь стенда — это
|
||||||
|
жизнь с менти, а интеграционный прогон в неё не входит; самое большее, он
|
||||||
|
становится темой урока.
|
||||||
|
|
||||||
|
Довод не про цену прогона, а про данные. Вложенное остаётся: у сырья срок
|
||||||
|
жизни трое суток, а ODS хранит всё, и события, которых мир не рождал, лягут в
|
||||||
|
лабы менти неотличимо от настоящих — считая конверсию, он молча посчитает и
|
||||||
|
их. Хуже явного мусора: явный видно.
|
||||||
|
|
||||||
|
Отсюда правило для того, что всё-таки вкладывает: **прибираться за собой.**
|
||||||
|
Дешевле всего это выходит партицией — опыт играет модельный день за границей
|
||||||
|
оси мира, его строки ложатся в собственную партицию `EventDate`, и она
|
||||||
|
сносится по окончании. Заодно менти видит партицию как единицу работы — тот
|
||||||
|
же механизм, на котором стоит переобработка дня X.
|
||||||
|
|
||||||
|
Что тогда стережёт цепочку постоянно — проверки на **настоящих** данных, тех,
|
||||||
|
что стенд произвёл сам: счётчики против манифеста зернового мира ловят
|
||||||
|
сломанный разбор (события уехали в брак — счёт разошёлся), ничего при этом не
|
||||||
|
вкладывая.
|
||||||
|
|
||||||
## Устройство скриптов
|
## Устройство скриптов
|
||||||
|
|
||||||
| Цель | Скрипт |
|
| Цель | Скрипт |
|
||||||
|
|||||||
Reference in New Issue
Block a user