v11.0.0rc1
Pre-release
Pre-release
MonsieurNicolas
released this
16 Apr 05:07
·
5221 commits
to master
since this release
Stellar Core 11.0.0
This release is focused predominantly on the implementations of several outstanding Core Advancement Proposals (CAPs), including:
- CAP-0005 - Throttling and transaction pricing improvements
- CAP-0006 - Add ManageBuyOffer Operation
- CAP-0020 - Bucket Initial Entries
Along with these changes we have a host of stability and performance improvements across all of Stellar Core, including performance gains for SCP, in-memory caches, ledger close times, and connection times. We’ve also squashed quite a few bugs, and will continue to focus on making Stellar Core faster and more reliable in upcoming minor releases.
Release Notes
Protocol Changes (v11)
- CAP-0005 (Throttling and transaction pricing improvements)
- CAP-0006 (Add ManageBuyOffer Operation) - Invert Price PR
- CAP-0020 (Bucket Initial Entries)
- Adjusted some types, to make it less error prone in languages that don’t support uint64 (OfferID is now int64 instead)
- Fixed possible
txINTERNAL_ERROR
when applyingPaymentOp
that was caused by internally-returned codePATH_PAYMENT_MALFORMED
. See this issue and this PR. - Added new error codes when hitting internal limits.
- Additional validator information included during nomination (SCP)
Breaking Changes
- Removed HTTP Catchup Command. Using the command line catch up directly from history (without having to connect to the network) is preferred going forward.
New Features
- Documented best practices and the reference design on how to integrate other systems with Stellar Core.
- Created new document regarding performance of Stellar Core, primarily around its sources of load and best configuration practices for optimal performance
Stability Improvements
- Improved filtering logic of SCP messages - you get both better performance and increased reliability when restarting a validator.
- Removed crypto dependency from SCP subsystem - creates better performance across Stellar Core.
- Fixed SQLite WAL checkpoint starvation regression introduced in 10.1.0. The symptom of this bug was unbounded growth in the WAL file attached to an SQLite database.
- Fixed priority-inversion issue for background merges occurring on machines with low core counts. The symptom of this was desynchronization from the network while awaiting a high-priority short merge blocking on a longer-running but lower-priority merge, on a machine with a small number of cores (e.g. 4 or 2).
- Improved performance of in-memory caches.
- Improved performance of ledger close time for some operations by prefetching necessary data in bulk.
- Improved stability of built-in endpoint for load testing,
generateload
. It is now less noisy under high loads. - Improved connection times by removing peers that are considered dead from the peers database.
Miscellaneous Improvements
- Improved log and error messages, giving useful hints for fixing issues.
- Lowered verbosity of overlay partition logging.
- Fixed handling of transactions that didn’t make it to the ledger due to surge pricing for few sequential ledger closes. Those transactions could live in the network for a long time, being broadcasted from nodes to each other and making it to the queue again and again. Now limit of four tries per transaction is enforced stronger, requiring users to resubmit them.