Files
rippled/src
Peng Wang e37c108195 Add 'NegativeUNL' as a supported amendment:
The Negative UNL is a feature of the XRP Ledger consensus protocol that
improves liveness (the network's ability to make forward progress) during
a partial outage. Using the Negative UNL, servers adjust their effective
UNLs based on which validators are currently online and operational, so
that a new ledger version can be declared validated even if several trusted
validators are offline.

The Negative UNL has no impact on how the network processes transactions
or what transactions' outcomes are, except that it improves the network's
ability to declare outcomes final during some types of partial outages.

The feature was originally introduced with version **1.6.0** but it was
only possible to manually enable this. If merged, this commit introduces
the amendment associated with the feature so that server operators can
vote on whether to enable this feature.

For more details, please see https://xrpl.org/negative-unl.html

This commit closes #3898.
2021-08-10 18:20:51 -07:00
..
2019-03-18 16:19:24 -07:00

rippled Source

Some of these directories come from entire outside repositories brought in using [git-subtree][]. This means that the source files are inserted directly into the rippled repository. They can be edited and committed just as if they were normal files. [git-subtree]: https://github.com/apenwarr/git-subtree

If you create a commit that contains files both from a subtree, and from the rippled source tree, please use care when designing the commit message, since it will appear in the subtree's individual repository when the changes are pushed back to the upstream. Better yet, do not mix files from subtrees and ripple in the same commit at all.

Source folders:

Folder Upstream Repo Description
beast N/A legacy utility code that was formerly associated with boost::beast
ed25519-donna https://github.com/floodyberry/ed25519-donna Ed25519 digital signatures
ripple N/A Core source code for rippled
secp256k1 https://github.com/bitcoin-core/secp256k1 ECDSA digital signatures using the secp256k1 curve
test N/A Unit tests for rippled

The following dependencies are downloaded and built using ExternalProject (or FetchContent, where possible). Refer to CMakeLists.txt file for details about how these sources are built :

Name Upstream Repo Description
lz4 https://github.com/lz4/lz4 LZ4 lossless compression algorithm
nudb https://github.com/vinniefalco/NuDB Constant-time insert-only key/value database for SSD drives (Less memory usage than RocksDB.)
snappy https://github.com/google/snappy "Snappy" lossless compression algorithm.
soci https://github.com/SOCI/soci Abstraction layer for database access.
sqlite https://www.sqlite.org/src An embedded database engine that writes to simple files.
rocksdb https://github.com/facebook/rocksdb Fast key/value database. (Supports rotational disks better than NuDB.)
protobuf https://github.com/google/protobuf Protocol buffer data interchange format. Only downloaded/built if a suitable version is not found by find_package, or if the local_protobuf option is explicitly set