Support multi-hash in multi-trie via PlainDB (#1106)
* Temporarily pin trie to #2 * Use generic and delay trait object casting Rust does not support super-trait upcasting * Add PlainDB impl for Ephemeral * Add PlainDB trait alias for completeness * Use PlainDB for test TrieBackendStorage fetch We always check overlay first for a storage fetch, which already checked null data. Using PlainDB here makes it work nicer with other PlainDB overlays. * Update trie reference * Use HashDBRef in places when approriate * Use PlainDBRef in places when approriate * Update trie crate reference * Remove unused HashDB::keys * Patch dependencies * Fix cargolock * Update cargo lock again
Showing
- substrate/Cargo.lock 46 additions, 46 deletionssubstrate/Cargo.lock
- substrate/Cargo.toml 10 additions, 0 deletionssubstrate/Cargo.toml
- substrate/core/executor/wasm/Cargo.lock 39 additions, 4 deletionssubstrate/core/executor/wasm/Cargo.lock
- substrate/core/executor/wasm/Cargo.toml 10 additions, 0 deletionssubstrate/core/executor/wasm/Cargo.toml
- substrate/core/state-machine/src/proving_backend.rs 2 additions, 2 deletionssubstrate/core/state-machine/src/proving_backend.rs
- substrate/core/state-machine/src/trie_backend.rs 2 additions, 2 deletionssubstrate/core/state-machine/src/trie_backend.rs
- substrate/core/state-machine/src/trie_backend_essence.rs 77 additions, 20 deletionssubstrate/core/state-machine/src/trie_backend_essence.rs
- substrate/core/test-runtime/Cargo.toml 10 additions, 0 deletionssubstrate/core/test-runtime/Cargo.toml
- substrate/core/trie/src/lib.rs 66 additions, 16 deletionssubstrate/core/trie/src/lib.rs
- substrate/node/runtime/wasm/Cargo.lock 45 additions, 10 deletionssubstrate/node/runtime/wasm/Cargo.lock
- substrate/node/runtime/wasm/Cargo.toml 10 additions, 0 deletionssubstrate/node/runtime/wasm/Cargo.toml
Please register or sign in to comment