go-ethereum/trie
rjl493456442 a1b8892384
trie: improve node rlp decoding performance (#25357)
This avoids copying the input []byte while decoding trie nodes. In most
cases, particularly when the input slice is provided by the underlying
database, this optimization is safe to use.

For cases where the origin of the input slice is unclear, the copying version
is retained. The new code performs better even when the input must be
copied, because it is now only copied once in decodeNode.
2022-08-19 00:39:47 +02:00
..
committer.go core, trie: rework trie committer (#25320) 2022-08-04 11:03:20 +03:00
database.go trie: improve node rlp decoding performance (#25357) 2022-08-19 00:39:47 +02:00
database_test.go trie: there's no point in retrieving the metaroot 2019-04-05 13:09:28 +03:00
encoding.go trie: use stacktrie for Derivesha operation (#21407) 2020-09-29 17:38:13 +02:00
encoding_test.go trie: use stacktrie for Derivesha operation (#21407) 2020-09-29 17:38:13 +02:00
errors.go all: introduce trie owner notion (#24750) 2022-06-06 17:14:55 +02:00
hasher.go trie: fix typo in comment (#25241) 2022-07-06 08:49:09 +02:00
iterator.go core, trie: rework trie committer (#25320) 2022-08-04 11:03:20 +03:00
iterator_test.go core: use TryGetAccount to read what TryUpdateAccount has written (#25458) 2022-08-04 16:13:18 +02:00
node.go trie: improve node rlp decoding performance (#25357) 2022-08-19 00:39:47 +02:00
node_enc.go rlp, trie: faster trie node encoding (#24126) 2022-03-09 14:45:17 +01:00
node_test.go trie: improve node rlp decoding performance (#25357) 2022-08-19 00:39:47 +02:00
nodeset.go core, trie: rework trie committer (#25320) 2022-08-04 11:03:20 +03:00
preimages.go core, trie, eth, cmd: rework preimage store (#25287) 2022-07-27 20:37:04 +02:00
proof.go core: use TryGetAccount to read what TryUpdateAccount has written (#25458) 2022-08-04 16:13:18 +02:00
proof_test.go all: introduce trie owner notion (#24750) 2022-06-06 17:14:55 +02:00
secure_trie.go core/state, trie, light: add a TryDeleteAccount method (#25531) 2022-08-17 14:14:49 +03:00
secure_trie_test.go core: use TryGetAccount to read what TryUpdateAccount has written (#25458) 2022-08-04 16:13:18 +02:00
stacktrie.go all: introduce trie owner notion (#24750) 2022-06-06 17:14:55 +02:00
stacktrie_test.go all: add whitespace linter (#25312) 2022-07-25 13:14:03 +03:00
sync.go trie: fix 'gosimple' lint issue (#25309) 2022-07-15 18:36:05 +02:00
sync_test.go core: use TryGetAccount to read what TryUpdateAccount has written (#25458) 2022-08-04 16:13:18 +02:00
trie.go core: use TryGetAccount to read what TryUpdateAccount has written (#25458) 2022-08-04 16:13:18 +02:00
trie_test.go core, trie: rework trie committer (#25320) 2022-08-04 11:03:20 +03:00
util_test.go core, trie: rework trie committer (#25320) 2022-08-04 11:03:20 +03:00
utils.go all: more linters (#24783) 2022-06-13 16:24:45 +02:00