This release is a stability release mostly aimed at improving performance of captive core and network overall.
Stability improvements
- Populate mEntryCache, performance improvement
- Prevent
mSyncingLedgers
from growing indefinitely when out of sync, lowering memory consumptions while catching up. - Increment iterator before break, that would sometimes update database entries multiple time while applying buckets.
- Clean up MultiOrderBook when offer is removed - improving memory usage a little bit.
- Query optimization for InMemoryLedgerTxn, restoring proper performance for captive core instances.
- Update the logic in
LogSlowExecution
to correctly count dropped messages - Check test tx meta in GitHub CI. Improve detection of protocol level bugs in tests.
- Move to
FMT_STRING
in production code, catches format errors at compile time. - Fix libc++ versions in Dockerfile.testing, fixing link issues in container.
- Fix passive flag xdr comment.
- add a few updates to docs related to meta ingestion with captive-core
- properly convert some enum values when printing json, could crash in some situations
- Check for DB file existence in captive core fixing a potential race condition on startup.
- [Enable docker-from-docker inside devcontainer]
(#3267)
New features
- Dampen arb flooding, by favoring transactions that are both higher fee and submitted first (only when identified as “arbitrage traffic”, other transactions are still flooded exclusively based on fee).
Breaking changes
None