David Schwartz fc560179e0 SHAMap performance improvements (RIPD-434)
This reworks the way SHAMaps are stored, flushed, backed, and
traversed. Rather than storing the linkages in the SHAMap itself,
that information is now stored in the nodes. This makes
snapshotting much cheaper and also allows traverse work done on
behalf of one SHAMap to be used by other SHAMaps that share inner
nodes with that SHAMap.

When a SHAMap is modified, nodes are modified all the way up to the
root. This means that the modified nodes in a SHAMap can easily be
traversed for flushing. So they don't need to be separately tracked.

Summary
* Remove mTNByID
* Remove mDirtyNodes
* Much faster traverses
* Much Faster snapshots
* New algorithm for flushing
* New vistNodes/visitLeaves
* Avoid I/O if a map is unbacked
2014-10-14 13:32:17 -04:00
2014-10-10 15:04:37 -07:00
2014-10-02 14:58:14 -07:00
2014-05-13 12:15:59 -07:00
2014-07-24 20:18:51 -07:00
2014-04-28 14:54:15 -07:00
2014-04-28 14:54:15 -07:00
2014-10-14 12:57:41 -04:00

#rippled - Ripple P2P server

##Build Status

This is the repository for Ripple's rippled, reference P2P server.

###Build instructions:

###Setup instructions:

Repository Contents

./bin

Scripts and data files for Ripple integrators.

./build

Intermediate and final build outputs.

./Builds

Platform or IDE-specific project files.

./doc

Documentation and example configuration files.

./src

Source code directory. Some of the directories contained here are external repositories inlined via git-subtree, see the corresponding README for more details.

./test

Javascript / Mocha tests.

License

Ripple is open source and permissively licensed under the ISC license. See the LICENSE file for more details.

###For more information:

Description
Decentralized cryptocurrency blockchain daemon implementing the XRP Ledger protocol in C++
Readme 350 MiB
Languages
C++ 99%
CMake 0.5%
Python 0.2%
Mako 0.2%