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.
This commit is contained in:
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user