refactor(smoke): ограничен по времени опрос keeper, уточнены формулировки

- Зачем:
  - горячее ревью: перевезённая проверка keeper потеряла привычку файла
    ограничивать обращения к контейнерам по времени и глушить их ошибки.
- Что:
  - опрос keeper идёт через keeper_exec с timeout 20s и тихим stderr,
    в отчёте об отказе пустой ответ назван словами.
  - комментарий к проверке и абзац README переписаны на проверяемое
    утверждение: настройки объявлены в compose.yaml, смоук спрашивает,
    дошли ли они до процесса.
  - в пробнике ClickHouse ожидаемой строке возвращено имя expected_rows.
- Проверка:
  - make config-test, make smoke, make smoke-cluster; отдельно проверено,
    что на паузе keeper проверка краснеет, а не виснет.
This commit is contained in:
2026-08-06 14:01:45 +03:00
parent 66490d124e
commit a2f5b27d89
3 changed files with 29 additions and 22 deletions
+4 -3
View File
@@ -83,8 +83,8 @@ def _drop_tables(client) -> None:
)
# Единственная проверка, вынесенная из задач: её делают обе, до создания таблиц
# и после уборки.
# Отсутствие таблиц проверяют обе задачи — перед созданием и после уборки,
# поэтому у этой проверки своё имя, а остальные живут прямо в теле задач.
def _assert_tables_absent(client) -> None:
for node_name, source in NODES:
remaining = _table_engines(client, source)
@@ -197,7 +197,8 @@ def test_clickhouse():
raise RuntimeError(
"запись и чтение маркера должны выполняться с разных нод"
)
if distributed_rows != [(1, written["hostname"], written["marker"])]:
expected_rows = [(1, written["hostname"], written["marker"])]
if distributed_rows != expected_rows:
raise RuntimeError(
"нода 2 не прочитала маркер первого шарда через Distributed: "
f"{written['marker']}, получено {distributed_rows}"