From 4a160f6121b62562a51f3ee9df7bb00c2eb8d3b1 Mon Sep 17 00:00:00 2001 From: autonomic-bot Date: Sat, 30 May 2026 19:54:20 +0000 Subject: [PATCH] =?UTF-8?q?fix(2):=20ghost=20F2-14b=20=E2=80=94=20bump=20D?= =?UTF-8?q?EPLOY=5FTIMEOUT/TIMEOUT=201200=E2=86=922400s=20for=20slow=20mys?= =?UTF-8?q?ql=20cold-init=20+=20migration?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit full4 timed out: abra deploy killed at 1200s while the app was at the near-final email_recipients migration tables (still 0/1). Wall-time = mysql fresh-dir init (~6min, app crash-loops on ECONNREFUSED until DB ready — no migration progress lost) + ~9-15min schema migration (round-trip-bound, slower under host load). Not a test weakening — bounded wait (matches discourse), a genuine hang still fails. Co-Authored-By: Claude Opus 4.8 (1M context) --- tests/ghost/recipe_meta.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/tests/ghost/recipe_meta.py b/tests/ghost/recipe_meta.py index 2052930..966ae89 100644 --- a/tests/ghost/recipe_meta.py +++ b/tests/ghost/recipe_meta.py @@ -8,7 +8,7 @@ # mysqldump pre-hook; P4 (ops.py + test_{backup,restore,upgrade}.py) seeds a `ci_marker` row there. HEALTH_PATH = "/" # Ghost serves a themed site HTML at root (200) HEALTH_OK = (200,) -DEPLOY_TIMEOUT = 1200 # subprocess timeout for `abra app deploy` +DEPLOY_TIMEOUT = 2400 # subprocess timeout for `abra app deploy` (cold-boot wall-time, see below) HTTP_TIMEOUT = 900 # Ghost's fresh-DB first boot runs a full schema migration (dozens of CREATE TABLEs, each a separate @@ -35,10 +35,13 @@ HTTP_TIMEOUT = 900 # clean-tree gate on that untracked overlay. It persists across the head checkout (idempotent — the PR # head already ships 15m). This is the policy-blessed "minimal overlay on the from-version so # upgrade-to-latest can run" — grace-only, masks no defect, weakens no test. -# TIMEOUT 1200s = migration (≤9min) + convergence, bounded so a genuine failure still fails (not a -# long blackout). See DECISIONS (ghost MySQL cold-boot / start_period recipe-PR + base-grace overlay). +# TIMEOUT/DEPLOY_TIMEOUT 2400s: the BASE cold boot's wall-time is mysql fresh-dir init (~6min, during +# which the app crash-loops harmlessly on `ECONNREFUSED 3306` until mysql accepts connections — no +# migration progress lost, it hasn't started) PLUS the ~9-15min schema migration (round-trip-bound, +# slower under host load). 1200s was too tight (full4 killed at the near-final `email_recipients` +# tables while still 0/1); 2400s gives headroom while still bounding a genuine hang (matches discourse). CHAOS_BASE_DEPLOY = True EXTRA_ENV = { - "TIMEOUT": "1200", + "TIMEOUT": "2400", "COMPOSE_FILE": "compose.yml:compose.ccci.yml", }