diff --git a/openfut-utas-host/tests/economy_integration.rs b/openfut-utas-host/tests/economy_integration.rs index b4ef59c..11c2af1 100644 --- a/openfut-utas-host/tests/economy_integration.rs +++ b/openfut-utas-host/tests/economy_integration.rs @@ -21,11 +21,12 @@ 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) { - // One pooled connection: the harness drives Core sequentially (blocking - // client), so a single connection serializes access deterministically and - // avoids a WAL-mode-establishment race across connections warming up on a - // brand-new DB file. (Steady-state multi-connection concurrency is a - // separate, deferred requirement.) + // 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) .await .expect("core pool");