From 0b31abe1d1d70b09940355c03ed6004917d9f271 Mon Sep 17 00:00:00 2001 From: OpenFUT Agent Date: Thu, 13 Aug 2026 20:20:58 +0000 Subject: [PATCH] test(fifa17): run economy harness on a real multi-connection Core pool The fresh-DB write-lock race is fixed (core fbb54ea: BEGIN IMMEDIATE writes), so the E2E+restart harness now uses max_connections=5; 10/10 deterministic. --- openfut-utas-host/tests/economy_integration.rs | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/openfut-utas-host/tests/economy_integration.rs b/openfut-utas-host/tests/economy_integration.rs index 11c2af1..3eec81c 100644 --- a/openfut-utas-host/tests/economy_integration.rs +++ b/openfut-utas-host/tests/economy_integration.rs @@ -21,13 +21,11 @@ use serde_json::{json, Value}; /// Boot a Core instance against `db_url`, serving on an ephemeral port. Returns /// the serve task handle and its base URL. async fn start_core(db_url: &str) -> (tokio::task::JoinHandle<()>, String) { - // Serialize Core access with a single pooled connection so this E2E+restart - // harness is deterministic. NOTE: even with the WAL-establish-once + - // busy_timeout fixes (core 75b1830), a multi-connection pool on a brand-new - // DB still intermittently surfaces a write "database error" under warm-up — - // a deeper sqlx/SQLite pool concurrency issue that is a documented remaining - // blocker for the Part-T concurrency proof, not exercised by this harness. - let pool = openfut_core::db::init_pool(db_url, 1) + // Multi-connection pool: the fresh-DB write-lock race is fixed in Core + // (WAL-establish-once + BEGIN IMMEDIATE write transactions + busy_timeout, + // core fbb54ea), proven by the concurrency reproduction (800/800 concurrent + // writes), so a real multi-connection pool is stable here. + let pool = openfut_core::db::init_pool(db_url, 5) .await .expect("core pool"); openfut_core::db::run_migrations(&pool)