From bb74bcfd7ab4c34dfe42d566d2bbcaea16cb645d Mon Sep 17 00:00:00 2001 From: Nicholas Dudfield Date: Fri, 18 Sep 2026 12:51:12 +0700 Subject: [PATCH] fix(test): persist harness relational ledgers with sqlite xahaud envconfig defaults relational to per-app rwdb, so LOAD latest after stopNode cannot find the saved ledger. Donor unit tests leave sqlite files under database_path; match that for restart policy. --- src/test/jtx/MultiNode.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/test/jtx/MultiNode.h b/src/test/jtx/MultiNode.h index d5408d3360..da05e333eb 100644 --- a/src/test/jtx/MultiNode.h +++ b/src/test/jtx/MultiNode.h @@ -339,6 +339,11 @@ public: auto cfg = peeredEnvconfig(envconfig()); // Non-standalone REQUIRES a real database_path (Config.cpp:1230). cfg->legacy("database_path", spec.dbPath); + // xahaud envconfig defaults [relational_db] to rwdb (per-Application + // in-memory). Donor envconfig leaves sqlite, so restartNode can LOAD + // latest from files under database_path. Keep that persistence here; + // otherwise setup() fails with "specified ledger could not be loaded". + cfg->overwrite(SECTION_RELATIONAL_DB, "backend", "sqlite"); // The memory nodestore backend is a PROCESS-GLOBAL static keyed by // the [node_db] path string, and envconfig's fixed "main" would make // every node in every run share one content-addressed table that