From 9006bbda9dc6afd5fb442d38e4787d4571a13c7e Mon Sep 17 00:00:00 2001 From: Valentin Balaschenko <13349202+vlntb@users.noreply.github.com> Date: Wed, 8 Oct 2025 19:31:11 +0100 Subject: [PATCH] using clearLedgerCachePrior --- src/xrpld/app/ledger/LedgerHistory.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/xrpld/app/ledger/LedgerHistory.cpp b/src/xrpld/app/ledger/LedgerHistory.cpp index ccec209bd4..842d5f81a1 100644 --- a/src/xrpld/app/ledger/LedgerHistory.cpp +++ b/src/xrpld/app/ledger/LedgerHistory.cpp @@ -555,6 +555,14 @@ LedgerHistory::clearLedgerCachePrior(LedgerIndex seq) if (!ledger || ledger->info().seq < seq) m_ledgers_by_hash.del(it, false); } + + std::unique_lock sl(m_ledgers_by_hash.peekMutex()); + JLOG(j_.debug()) << "mLedgersByIndex size before clear: " + << mLedgersByIndex.size(); + auto first_keep = mLedgersByIndex.lower_bound(seq); + mLedgersByIndex.erase(mLedgersByIndex.begin(), first_keep); + JLOG(j_.debug()) << "mLedgersByIndex size after clear: " + << mLedgersByIndex.size(); } } // namespace ripple