Commit Graph

42 Commits

Author SHA1 Message Date
Robert Habermeier
517c705ab5 In-memory trie operations (#1408)
* small cleanups in trie

* Memory trie skeleton

* decode nodes from RLP

* memorytrie -> memorytriedb

* implement Trie for MemoryTrie

* partially implement insert

* implement trie insertion

* don't load whole trie into memory, lookup across memory and db

* re-implement insertion and lazily load necessary nodes from DB

* node removal w/o fixing

* reduce churn in node storage

* finish remove implementation

* committing the in-memory trie

* reload root node after commit

* generate elastic arrays when converting nodes to rlp

* port triedbmut tests over to memorytriedb, fix a few bugs.

* hash count and dirty flag

* initial attempt for node inspection

* back to skeleton

* inspection framework

* implement insertion

* no panic paths in insert

* implement deletion without fixing

* node fixing

* commit nodes to db

* tracing targets and bugfix

* get tests to pass with a lot of tracing

* set playpen iterations to 10

* remove some tracing statements

* make TrieMut::root take &mut self

* replace triedbmut with memorytriedb

* treat empty insert value as removal

* add test for null insert

* fix some style concerns

* trie: use nodehandle for root_node, minor cleanup
2016-07-14 18:06:46 +02:00
Marek Kotewicz
bcb63bce12 serde is no longer util dependency (#1534)
* removed old json-tests

* simplify folds in triehash.rs

* removed unused json_aid

* removed unused squeeze.rs

* json branching tests for trie

* removing todos from util

* separated UsingQueue and Table

* further cleanup, removing unused code

* serde serialization of hash moved to rpc module

* uint wrapper for rpc in progress

* serialization of uint moved to rpc module

* updated eth-secp256k1

* updated igd, serde is no longer dependency of util

* loading trie consensus tests

* renamed aliases in rpc imports
2016-07-06 11:23:29 +02:00
Marek Kotewicz
62b9c1b14f util cleanup (#1474)
* removed old json-tests

* simplify folds in triehash.rs

* removed unused json_aid

* removed unused squeeze.rs

* json branching tests for trie

* loading trie consensus tests
2016-07-05 15:16:27 +02:00
Tomasz Drwięga
bb2a631885 Fixing compilation&clippy warnings (#1531)
* Fixing compilation&clippy warnings

* Adding spaces
2016-07-04 13:53:55 +02:00
debris
06cf2a3f41 updated FatDB description 2016-06-27 14:01:17 +02:00
debris
36626f96a8 separated TrieMut from Trie, added Generic Trie type to TrieFactory 2016-06-27 11:19:27 +02:00
debris
5ecbeaa82f trie factory in progress 2016-06-27 10:59:59 +02:00
debris
1b4f67151f fatdb and fatdb iterator module 2016-06-27 09:16:34 +02:00
keorn
be8f922b3f Replace deprecated hashdb trait names (#1394)
* replace deprecated hashdb method names

* spaces -> tabs
2016-06-23 11:16:11 +02:00
Robert Habermeier
13968aaa38 Refactor triedb constructors to error on invalid state root (#1230)
* add TrieError, refactor Trie DB creation

* remove Result type alias due to glob import conflicts

* fix fallout in state.rs

* add debug, display impl for TrieError

* fix fallout in account.rs

* ethcore::Error::TrieError variant

* fix remaining fallout in ethcore crate

* added From<TrieError> impl for Error, removed map_err calls

* fix test breakages

* fix doc tests

* update docs

[ci skip]
2016-06-07 11:44:09 -07:00
Robert Habermeier
1e10445f82 exists -> contains 2016-06-02 21:23:43 +02:00
Robert Habermeier
e24ab5a4f1 correct signature of SecTrieDB::raw_mut
&mut T is invariant over its type parameter, so we need to specify the trait's lifetime explicitly rather than coerce it to the elided lifetime
2016-05-25 17:10:01 +02:00
Tomasz Drwięga
256557d3cc Removing warnings 2016-05-23 11:46:01 +02:00
Tomasz Drwięga
85da55a537 Fixing warnings 2016-04-06 10:55:40 +02:00
Tomasz Drwięga
f724cab92d Merge branch 'master' into updating_clippy
Conflicts:
	ethcore/src/lib.rs
	sync/src/chain.rs
	sync/src/lib.rs
	util/src/keys/store.rs
	util/src/lib.rs
2016-03-11 19:17:09 +01:00
Tomasz Drwięga
d84e008e00 Removing superflous check for nightly 2016-03-11 11:16:49 +01:00
Tomasz Drwięga
8709dd28f8 Fixing clippy warnings 2016-03-11 10:58:51 +01:00
Tomasz Drwięga
cbc2c0cf0c Fixing clippy warnings. When building on nightly it is required to enable clippy 2016-03-07 14:34:17 +01:00
Gav Wood
ec8c1cb5f9 Make "random" trie tests fully determinate. 2016-02-27 15:49:44 +01:00
debris
f50bf528e6 fixed allow warnings in util 2016-02-19 11:57:52 +01:00
debris
f1b39ee1e5 nightly fixes 2016-02-14 12:54:27 +01:00
Gav Wood
105f4262dd Merge pull request #354 from ethcore/license
License
2016-02-05 14:06:10 +01:00
debris
c90d64662a added license in every *.rs file 2016-02-05 13:40:41 +01:00
arkpar
6b3390f034 Refactored JournalDB 2016-02-04 02:40:35 +01:00
Gav Wood
fad2f3a23d More doc updates. All Gav Wood docs done. 2016-02-03 14:51:45 +01:00
Gav Wood
c531150f44 More documentation. 2016-02-03 13:20:32 +01:00
Marek Kotewicz
d688fa0622 Merge pull request #296 from ethcore/jsonrpcclioptions
Include JSONRPC CLI options.
2016-02-02 02:37:09 +01:00
Gav Wood
54924d14b3 Include JSONRPC CLI options.
Bump version numbers.
Update Trie benchmarks.
Disable RLP benchmark (@debrid please fix).
2016-02-02 01:59:14 +01:00
debris
2bddc938af util docs 2016-02-01 15:22:42 +01:00
arkpar
cfa2776e75 Removed test log initializations 2016-01-29 12:27:50 +01:00
arkpar
aa9fb98a74 Merge branch 'master' of github.com:ethcore/parity into ark 2016-01-27 17:31:45 +01:00
arkpar
40314614f7 RLP encoder refactoring 2016-01-27 12:14:57 +01:00
Gav Wood
387e3ec3fd Ensure Spec::ensure_db_good() places DB entries for code & storage. 2016-01-26 15:00:22 +01:00
Tomusdrw
adc763325d Merge branch 'master' into clippy
Conflicts:
	util/src/rlp/rlptraits.rs
2016-01-19 23:22:40 +01:00
Tomusdrw
bad2a244df Adding documentation request comments. 2016-01-19 17:02:01 +01:00
Tomusdrw
c746f0e62c Fixing all clippy lints 2016-01-19 13:47:30 +01:00
Tomusdrw
062193ceb5 Fixing clippy errors in util 2016-01-19 12:14:29 +01:00
Gav Wood
fab99e8538 Disable trieDB ref counting for now. 2016-01-18 00:51:55 +01:00
Gav Wood
589ecf10af Additonal test for Trie iterator. 2016-01-17 22:30:07 +01:00
Gav Wood
9203dbdca2 Minor tidy up. 2016-01-17 22:24:42 +01:00
Gav Wood
62a0737e59 Iterator for NibbleSlice and TrieDB. 2016-01-17 22:18:47 +01:00
Gav Wood
6ea8eaa3b5 Move ethcore files back into root. 2016-01-17 13:11:25 +01:00