@@ -1685,50 +1685,47 @@ LedgerManagerImpl::transferLedgerEntriesToBucketList(
1685
1685
if (blEnabled &&
1686
1686
protocolVersionStartsFrom (initialLedgerVers, SOROBAN_PROTOCOL_VERSION))
1687
1687
{
1688
+ auto ttlKeys = ltx.getAllTTLKeysWithoutSealing ();
1689
+ auto deletedPersistentDataKeys =
1690
+ ltx.getAllDeletedPersistentContractDataKeysWithoutSealing ();
1691
+ auto createdPersistentDataKeys =
1692
+ ltx.getAllCreatedPersistentContractDataKeysWithoutSealing ();
1693
+ LedgerTxn ltxEvictions (ltx);
1694
+
1695
+ auto evictedEntries =
1696
+ mApp .getBucketManager ().resolveBackgroundEvictionScan (
1697
+ ltxEvictions, lh.ledgerSeq , ttlKeys, initialLedgerVers);
1698
+
1699
+ if (protocolVersionStartsFrom (
1700
+ initialLedgerVers,
1701
+ Bucket::FIRST_PROTOCOL_SUPPORTING_PERSISTENT_EVICTION))
1688
1702
{
1689
- auto deletedPersistentDataKeys =
1690
- ltx.getAllDeletedPersistentContractDataKeysWithoutSealing ();
1691
- auto createdPersistentDataKeys =
1692
- ltx.getAllCreatedPersistentContractDataKeysWithoutSealing ();
1693
- LedgerTxn ltxEvictions (ltx);
1703
+ auto createdVec =
1704
+ std::vector<LedgerKey>(createdPersistentDataKeys.begin (),
1705
+ createdPersistentDataKeys.end ());
1706
+ auto deletedVec =
1707
+ std::vector<LedgerKey>(deletedPersistentDataKeys.begin (),
1708
+ deletedPersistentDataKeys.end ());
1709
+ mApp .getBucketManager ().addHotArchiveBatch (
1710
+ mApp , lh, evictedEntries.second , createdVec, deletedVec);
1694
1711
1695
- auto evictedEntries =
1696
- mApp .getBucketManager ().resolveBackgroundEvictionScan (
1697
- ltxEvictions, lh.ledgerSeq , keys, initialLedgerVers);
1698
-
1699
- if (protocolVersionStartsFrom (
1700
- initialLedgerVers,
1701
- Bucket::FIRST_PROTOCOL_SUPPORTING_PERSISTENT_EVICTION))
1712
+ if (ledgerCloseMeta)
1702
1713
{
1703
- auto createdVec = std::vector<LedgerKey>(
1704
- createdPersistentDataKeys.begin (),
1705
- createdPersistentDataKeys.end ());
1706
- auto deletedVec = std::vector<LedgerKey>(
1707
- deletedPersistentDataKeys.begin (),
1708
- deletedPersistentDataKeys.end ());
1709
- mApp .getBucketManager ().addHotArchiveBatch (
1710
- mApp , lh, evictedEntries.second , createdVec,
1711
- deletedVec);
1712
- }
1713
-
1714
- if (ledgerCloseMeta)
1715
- {
1716
- ledgerCloseMeta->populateEvictedEntries (evictedEntries);
1717
- }
1714
+ ledgerCloseMeta->populateEvictedEntries (evictedEntries);
1718
1715
}
1719
- else
1720
- {
1716
+ }
1717
+ else
1718
+ {
1721
1719
1722
- if (ledgerCloseMeta)
1723
- {
1724
- ledgerCloseMeta->populateEvictedEntriesLegacy (
1725
- ltxEvictions.getChanges ());
1726
- }
1720
+ if (ledgerCloseMeta)
1721
+ {
1722
+ ledgerCloseMeta->populateEvictedEntriesLegacy (
1723
+ ltxEvictions.getChanges ());
1727
1724
}
1728
-
1729
- ltxEvictions.commit ();
1730
1725
}
1731
1726
1727
+ ltxEvictions.commit ();
1728
+
1732
1729
getSorobanNetworkConfigInternal ().maybeSnapshotBucketListSize (
1733
1730
lh.ledgerSeq , ltx, mApp );
1734
1731
}
0 commit comments