From afe6dc534d05678ca32fa7c729403fea4158596a Mon Sep 17 00:00:00 2001 From: Nicholas Dudfield Date: Fri, 18 Sep 2026 13:34:32 +0700 Subject: [PATCH] fix(app): persist genesis successor state tree --- src/xrpld/app/main/Application.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/xrpld/app/main/Application.cpp b/src/xrpld/app/main/Application.cpp index 874c8ca110..0c1612a05f 100644 --- a/src/xrpld/app/main/Application.cpp +++ b/src/xrpld/app/main/Application.cpp @@ -1835,6 +1835,10 @@ ApplicationImp::startGenesisLedger() auto const next = std::make_shared(*genesis, timeKeeper().closeTime()); next->updateSkipList(); + // Consensus-built ledgers flush their state trees, but this genesis + // successor bypasses that path. Persist its state before it can be + // advertised as complete or loaded by a restarted node. + next->stateMap().flushDirty(hotACCOUNT_NODE); XRPL_ASSERT( next->read(keylet::fees()), "ripple::ApplicationImp::startGenesisLedger : valid ledger fees");