Introducing XRP Ledger (rippled) version 1.3.1
Ripple has released version 1.3.1 of rippled, the reference implementation of the core XRP Ledger protocol. To learn more about how to build and run a rippled server, see Manage the Rippled Server.
This release supersedes version 1.3.0. Version 1.3.1 addresses deadlock conditions reported by some users late in the release cycle for 1.3.0.
Installing or Updating rippled
The installation instructions on supported platforms have changed for rippled 1.3.x.
- For all new installs, see Install
rippled. - On Red Hat Enterprise Linux 7 or CentOS 7, if you have automatic updates enabled, the updates should work successfully. For more information or for manual update instructions, see the Migration Instructions for RHEL 7 / CentOS.
- On Ubuntu Linux (16.04, 18.04, or newer), native (APT) packages are now available. If you already have
rippledinstalled using the previous method (installing RPMs with Alien), see Migration Instructions for Ubuntu Linux for steps to migrate to the new, native packages. Additionally, it is now possible to enable automatic updates on Ubuntu. - Debian 9 Stretch is now a supported operating system. See Installation on Ubuntu or Debian Linux for instructions.
- For other platforms, please compile from source.
Summary of Changes
The rippled 1.3.1 release introduces several new features and overall improvements to the codebase, including the fixMasterKeyAsRegularKey amendment, code to adjust the timing of the consensus process and support for decentralized validator domain verification. The release also includes miscellaneous improvements including in the transaction censorship detection code, transaction validation code, manifest parsing code, config file parsing code, log file rotation code, and in the build, continuous integration, testing and package building pipelines.
New and Updated Features
- The
fixMasterKeyAsRegularKeyamendment which, if enabled, will correct a technical flaw that allowed setting an account's regular key to the account's master key. - Code that allows validators to adjust the timing of the consensus process in near-real-time to account for connection delays.
- Support for decentralized validator domain verification by adding support for a "domain" field in manifests.
Bug Fixes
- Improve ledger trie ancestry tracking to reduce unnecessary error messages.
- More efficient detection of dry paths in the payment engine. Although not a transaction-breaking change, this should reduces spurious error messages in the log files.
- Improved handling of deadlock conditions.
Test Net
This release is currently live on the XRP Ledger Test Net, with the fixMasterKeyAsRegularKey amendment active. To connect your server to the test net, please upgrade to version 1.3.1 immediately.
Upgrading
On supported platforms, see the instructions on updating rippled.
| Package Type | Platform | Link | SHA-256 |
|---|---|---|---|
| RPM | Linux x86-64 | rippled-1.3.1-1.el7.x86_64.rpm | 98ffea13716c3b37472d75cbb25870bfb6a7ee2360fe89a2b86833774174b370 |
| DEB | Linux x86-64 | rippled_1.3.1-1_amd64.deb | 3ecd391ba12f69060851952cef8ee1079a6f5e22ecb784bf05f50ef8f294aa92 |
Git commit
When compiling from source, the first log entry should be the change setting the version:
commit e1adbd7ddd5dfa9f2a9791aa3c0fcc1fdb4e8236 Author: Manoj doshi <[email protected]> Date: Wed Jul 24 15:21:56 2019 -0700 Set version to 1.3.1
Commits
e1adbd7ddSet version to 1.3.1355a7b04aAdd a LogicError when a deadlock is detectedd3ee0df93Add links to in-repo build-instructions7c24f7b17Improve logging during process startup.a3060516cImprove package build pipelinecaa5c9e22Set version to 1.3.0846538304Set version to 1.3.0-rc27b7e3b675Return WS error on closure when balance threshold exceedsa988b3224Use NuDB context with backends89b3bf079Stabilize RPC error code values:6d8988b78Improve handling of revoked manifests:3acbd84f1Set proper system openssldir in package build45403b877Set version to 1.3.0-rc1f17d9bc42Set version to 1.3.0-b6ba2714fa2Make protocol message counters more granular:2c4b3d515Trim whitespace for all config lines59973a435Add beast/cxx17 to install set93232ec7dAdd logrotate config to rpm/deb pkgsefa926676Set version to 1.3.0-b5dc24748c2Improve locking of PeerImp member variablesf8365f500Add JsonOptions enum class to contain options passed to getJSON methodsc2138c4e8Fix Docker error about "FROM" macro usagebfad96dbbForce snappy compression for RocksDB (remove option):0ef6d9f9aAdd slack notify for approvals, remove old RPM buildc1a1cfe55Pkgbld - Make approval blocking, add slack summary message773dcd1d4Modernize base_uint:de99e79bfFix SNTPClock shutdowne83d367f4Set version to 1.3.0-b4aa76b382aDocument IPv6 usage in sample config:595b7b194Improve locking:5f908ba87Make some locks more granular:adc1b8a36Update package build env to boost 1.7073c6e47e8Use local rippled core lib during pkg build3a780f80fRemove repo package check from update scriptc78404e23Pause for lagging validators.79a0cb096Payment paths with a zero output step are dry (RIPD-1749):6f9e8dc72Support Boost 1.70:b39b0fef3Get names of transactions and ledger types from jssbe139d9bdAdd some missing items to help command list:c6d82c722Configure build+test matrix for GitLab CI:0c20e2eb8Refine parseUrl regular expression (RIPD-1708):63eeb8d73Use recursive remove and clean for apt (OPS-508)5214b3c1bSet version to 1.3.0-b35f7a61f04Report a peer's public key and IP address in log messages (fixes #2675)c5a938de5Disallow using the master key as the regular key:9372a587eRequest RocksDB PORTABLE build option948e724dfImprovements to pkg CI pipeline:06faf2bd5Improve exit and test failure handling in CI1dd81c04fImprove jemalloc build config:56dbf70c3Improve windows build READMEf8a4ac6adUse optimized OpenSSL implementations when possible61bd06177Reserve memory before inserting into a flat set80e535a13Arguments passed to jtx Env::operator() must be invocable:64b55c0f8Rename JsonFields.h to jss.h:afcc4ff29Reduce likelihood of malformed SOTemplate:57fe197d3Remove runtime inference of unrecognized SFields9279a3feeRefactor SField construction:b6363289bUse Json::StaticString for field names8c1123edcMerge master (1.2.4) into develop (1.3.0-b2)fa5785947Set version to 1.3.0-b288cb0e592Allow manifests to include an optional 'domain' field:e239eed6dRemove obsolete code504b3441dApply resource limits to proxied clients:872478d96Construct ErrorCodes lookup table at compile time185f2baf7Remove unused RPC error codes:36d675894Disallow both single- and multi-signing in RPC (RIPD-1713):d8c450d27Remove incorrectly defaulted functions:8ef5b9babMake LedgerTrie remove work for truncated historye6370a648Add dpkg/rpm building capability:b2170d016Update travis dist/tools5c124f11cRemove the 'rocksdb' subtree2aed24a55Build RocksDB by ExternalProject296469f5fReduce memory allocations for RCLCensorshipDetector08371ba2cImprove shard downloader status reporting56bc2a2adImprove SSLHTTPDownloader:1084dc6ddSet version to 1.3.0-b18023caaa9Correct example configuration file:8b9746628Always use UTC to be timezone-neutral (RIPD-1659)de1d10253Allow build to support XCode 10.21e1e8c254Remove assert that accesses object post-dtor (RIPD-1704)aa49be65aRemove conditional check for feature introduced in 0.28.1-b7cd820b377Improve the server's PING/PONG logic8d59ed5b2Remove STValidation::isValid overloade03efdbe0Remove use of beast's detail::sec_ws_key_type4f52c2989Remove use of beast::detail::is_invocable trait3fb13233aProvide patch for FindBoost and apply it9695fd44bSupport boost 1.691bb32134fRemove censorshipMaxWarnings
Contributions
GitHub
The public git repository for rippled is hosted on GitHub at https://github.com/ripple/rippled.
We welcome contributions, big and small, and invite everyone to join the community of XRP Ledger developers and help us build the Internet of Value.
Credits
The following people contributed directly to this release:
- Crypto Brad Garlinghouse ([email protected])
- Ethan MacBrough ([email protected])
- Edward Hennis ([email protected])
- Elliot Lee ([email protected])
- Howard Hinnant ([email protected])
- invalidator ([email protected])
- James Fryman ([email protected])
- Jesper Wallin ([email protected])
- Joseph Busch ([email protected])
- David Scwhartz ([email protected])
- John Freeman ([email protected])
- Lazaridis ([email protected])
- Manoj Doshi ([email protected], [email protected])
- Mark Travis ([email protected])
- Miguel Portilla ([email protected])
- Mike Ellery ([email protected])
- Mo Morsi ([email protected])
- Nik Bougalis ([email protected])
- Scott Schurr ([email protected])
- Scott Determan ([email protected])