Re-exports§
pub use self::state::State as StorageState;
pub use self::state::StateTrait as StorageStateTrait;
pub use self::state::StateTraitExt as StorageStateTraitExt;
pub use self::state_manager::StateIndex;
pub use self::state_manager::StateManager as StorageManager;
pub use self::state_manager::StateManagerTrait as StorageManagerTrait;
pub use self::storage_db::KeyValueDbTrait;
pub use crate::tests::FakeSnapshotMptDb as SimpleMpt;
Modules§
- cache
- cache_
manager_ delta_ mpts - cow_
node_ ref - defaults
- delta_
mpt_ iterator - delta_
mpt_ open_ db_ manager - state
- state_
manager - storage_
db - storage_
dir - subtrie_
visitor - tests
- utils
Structs§
- ArcDelta
DbWrapper - Atomic
Commit - Atomic
Commit Transaction - Compressed
Path Raw - Consensus
Param - Consensus parameter is only configurable in test mode.
- CowNode
Ref - CowNodeRef facilities access and modification to trie nodes in multi-version MPT. It offers read-only access to the original trie node, and creates an unique owned trie node once there is any modification. The ownership is maintained centralized in owned_node_set which is passed into many methods as argument. When CowNodeRef is created from an owned node, the ownership is transferred into the CowNodeRef object. The visitor of MPT makes sure that ownership of any trie node is not transferred more than once at the same time.
- Delta
MptId Gen - Delta
MptIterator - Full
Sync Verifier - Kvdb
Rocksdb - Kvdb
Sqlite - Kvdb
Sqlite Statements - Maybe
Node RefDelta MptCompact - MemOptimized
Trie Node - A node consists of an optional compressed path (concept of Patricia Trie), an optional ChildrenTable (if the node is intermediate), an optional value attached, and the Merkle hash for subtree.
- MptSlicer
- Multi
Version Merkle Patricia Trie - Node
Merkle Proof - Node
RefDelta MptCompact - The MSB is used to indicate if a node is in mem or on disk, the rest 31 bits specifies the index of the node in the memory region.
- Open
Delta DbLru - Owned
Node Set - A container to store information about owned nodes.
- Recording
Storage - Replicated
State - Slab
- Pre-allocated storage for a uniform data type. The modified slab offers thread-safety without giant lock by mimicking the behavior of independent pointer at best.
- Snapshot
DbManager Sqlite - Sqlite
Connection - State
Proof - State
Proof Merger - Storage
Configuration - SubTrie
Visitor - Trie
Proof - Trie
Proof Node - Vanilla
Children Table
Enums§
Constants§
Traits§
- KVInserter
- Classes implement KVInserter is used to store key-values in MPT iteration.
- Openable
OnDemand Open Delta DbTrait
Functions§
- into_
simple_ mpt_ key - Given an integer-indexed
SimpleMpt
withnum_keys
elements stored in it, convertkey
into the corresponding key format. - make_
simple_ mpt - rlp_
key_ value_ len - We assume that the keys and values are serialized in separate vector, therefore we only add up those rlp string lengths. The rlp bytes for the up-most structures are ignored for sync slicer.
- simple_
mpt_ merkle_ root - simple_
mpt_ proof