From c3cbee7197a01215231fc370a0bb1c594f8adc3c Mon Sep 17 00:00:00 2001 From: sokovmd Date: Mon, 20 Apr 2026 01:51:13 +0300 Subject: [PATCH 1/2] Update README.md: mention that setup.command can point to a script --- README.md | 2 ++ RU.md | 2 ++ 2 files changed, 4 insertions(+) diff --git a/README.md b/README.md index 4b97b6d..7c372bc 100644 --- a/README.md +++ b/README.md @@ -211,6 +211,8 @@ These two values define which schema state is compared. They should point to two This command is responsible for preparing the database completely. In most projects it starts containers, applies migrations, and optionally seeds data. It should exit with status `0` only when PostgreSQL is actually ready for benchmark queries. +`setup.command` is any shell command. For complex setup (materialized view refreshes, post-seed `ANALYZE`, multiple steps with conditional logic) point it to a script: `command: "./scripts/pgcompare-setup.sh"`. + ### `benchmark` - `before_queries`: SQL file used for the `before` phase diff --git a/RU.md b/RU.md index 6224d22..aee4580 100644 --- a/RU.md +++ b/RU.md @@ -212,6 +212,8 @@ services: Эта команда должна полностью подготовить базу. На практике обычно она поднимает контейнеры, накатывает миграции и при необходимости выполняет сидирование. Команда должна завершаться с `exit 0` только тогда, когда PostgreSQL уже готов к тестовым запросам. +`setup.command` — это любая shell-команда. Для сложного setup (обновление материализованных представлений, `ANALYZE` после сидирования, несколько шагов с условной логикой) вынесите её в скрипт: `command: "./scripts/pgcompare-setup.sh"`. + ### `benchmark` - `before_queries`: SQL-файл для фазы `before` From cefb9e64337a45e14594d79a95c84919921883f0 Mon Sep 17 00:00:00 2001 From: sokovmd Date: Mon, 20 Apr 2026 01:59:35 +0300 Subject: [PATCH 2/2] Update README.md --- README.md | 4 +++- RU.md | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 7c372bc..f6d433d 100644 --- a/README.md +++ b/README.md @@ -211,7 +211,9 @@ These two values define which schema state is compared. They should point to two This command is responsible for preparing the database completely. In most projects it starts containers, applies migrations, and optionally seeds data. It should exit with status `0` only when PostgreSQL is actually ready for benchmark queries. -`setup.command` is any shell command. For complex setup (materialized view refreshes, post-seed `ANALYZE`, multiple steps with conditional logic) point it to a script: `command: "./scripts/pgcompare-setup.sh"`. +`setup.command` is any shell command. For complex setup (materialized view refreshes, multiple steps with conditional logic, custom post-processing), point it to a script: `command: "./scripts/pgcompare-setup.sh"`. + +`pgcompare` already runs `VACUUM (ANALYZE)` in `ReadinessCheck`, so post-seed `ANALYZE` in setup is usually unnecessary. ### `benchmark` diff --git a/RU.md b/RU.md index aee4580..985c60a 100644 --- a/RU.md +++ b/RU.md @@ -212,7 +212,9 @@ services: Эта команда должна полностью подготовить базу. На практике обычно она поднимает контейнеры, накатывает миграции и при необходимости выполняет сидирование. Команда должна завершаться с `exit 0` только тогда, когда PostgreSQL уже готов к тестовым запросам. -`setup.command` — это любая shell-команда. Для сложного setup (обновление материализованных представлений, `ANALYZE` после сидирования, несколько шагов с условной логикой) вынесите её в скрипт: `command: "./scripts/pgcompare-setup.sh"`. +`setup.command` — это любая shell-команда. Для сложного setup (обновление материализованных представлений, несколько шагов с условной логикой, нестандартная постобработка) вынесите её в скрипт: `command: "./scripts/pgcompare-setup.sh"`. + +`pgcompare` уже выполняет `VACUUM (ANALYZE)` в `ReadinessCheck`, поэтому `ANALYZE` после сидирования в setup обычно не нужен. ### `benchmark`