Martin Holst Swende
876f357364
trie: disable fnv64a hashing of hashes for bigcache ( #19314 )
...
* trie: disable fnv64a hashing of hashes for bigcache
* trie/database: add very important period
6 years ago
Péter Szilágyi
91eec1251c
cmd, core, eth, trie: get rid of trie cache generations ( #19262 )
...
* cmd, core, eth, trie: get rid of trie cache generations
* core, trie: get rid of remainder of cache gen boilerplate
6 years ago
Péter Szilágyi
054412e335
all: clean up and proerly abstract database access
6 years ago
Matthew Halpern
514a9472ad
trie: prefer nil slices over zero-length slices ( #19084 )
6 years ago
HackyMiner
bb7c786b09
trie: add missing unlock call in error case ( #18985 )
6 years ago
Martin Holst Swende
2843001ac2
trie: fix overflow in write cache parent tracking ( #18165 )
...
trie/database: fix overflow in parent tracking
6 years ago
Péter Szilágyi
434dd5bc00
cmd, core, eth, light, trie: add trie read caching layer
6 years ago
Péter Szilágyi
11bbc66082
eth, trie: fix tracer GC which accidentally pruned the metaroot
7 years ago
Mymskmkt
8051a0768a
trie: fix comment typo ( #17350 )
7 years ago
Péter Szilágyi
8a9c31a307
trie: handle removing the freshest node too
7 years ago
Péter Szilágyi
319098cc1c
trie: fix a temporary memory leak in the memcache
7 years ago
Péter Szilágyi
d926bf2c7e
trie: cache collapsed tries node, not rlp blobs ( #16876 )
...
The current trie memory database/cache that we do pruning on stores
trie nodes as binary rlp encoded blobs, and also stores the node
relationships/references for GC purposes. However, most of the trie
nodes (everything apart from a value node) is in essence just a
collection of references.
This PR switches out the RLP encoded trie blobs with the
collapsed-but-not-serialized trie nodes. This permits most of the
references to be recovered from within the node data structure,
avoiding the need to track them a second time (expensive memory wise).
7 years ago
Péter Szilágyi
a3267ed929
trie: don't report the root flushlist as an alloc
7 years ago
Péter Szilágyi
143c4341d8
core, eth, trie: streaming GC for the trie cache ( #16810 )
...
* core, eth, trie: streaming GC for the trie cache
* trie: track memcache statistics
7 years ago
Felix Lange
a5c0bbb4f4
all: update license information ( #16089 )
7 years ago
Péter Szilágyi
55599ee95d
core, trie: intermediate mempool between trie and database ( #15857 )
...
This commit reduces database I/O by not writing every state trie to disk.
7 years ago