go-ethereum/trie
Daniel Liu 07328dcec4
core, eth, trie: abstract node scheme #25532 (#1123)
This PR introduces a node scheme abstraction. The interface is only implemented by `hashScheme` at the moment, but will be extended by `pathScheme` very soon.

Apart from that, a few changes are also included which is worth mentioning:

-  port the changes in the stacktrie, tracking the path prefix of nodes during commit
-  use ethdb.Database for constructing trie.Database. This is not necessary right now, but it is required for path-based used to open reverse diff freezer

Co-authored-by: rjl493456442 <garyrong0905@gmail.com>
2025-11-17 11:25:08 +05:30
..
committer.go trie: wrap deletion in case trie.root is nil #26365 (#1124) 2025-11-17 11:24:11 +05:30
database.go core, eth, trie: abstract node scheme #25532 (#1123) 2025-11-17 11:25:08 +05:30
database_test.go core, eth, trie: abstract node scheme #25532 (#1123) 2025-11-17 11:25:08 +05:30
encoding.go trie: Derivesha with stacktrie (#21407) 2025-04-07 16:44:32 +08:00
encoding_test.go trie: remove deprecated uses of math.rand (#1136) 2025-06-25 16:57:23 +08:00
errors.go all: introduce trie owner notion #24750 (#1090) 2025-08-22 16:37:39 +08:00
hasher.go trie: fix some typos #25551 #25648 (#1111) 2025-09-21 18:51:15 +08:00
iterator.go cmd, core, eth, trie: track deleted nodes #22225 #25757 (#1120) 2025-11-12 13:32:22 +05:30
iterator_test.go core, eth, trie: abstract node scheme #25532 (#1123) 2025-11-17 11:25:08 +05:30
node.go trie: improve node rlp-decoding #25357 (#1109) 2025-09-17 08:42:42 +08:00
node_enc.go trie: faster trie node encoding (#24126) 2025-04-07 16:44:32 +08:00
node_test.go all: handle err from func rlp.Encode, close XFN-127 (#1692) 2025-11-03 12:45:19 +05:30
nodeset.go cmd, core, eth, trie: track deleted nodes #22225 #25757 (#1120) 2025-11-12 13:32:22 +05:30
preimages.go core, eth, trie: rework preimage store #25287 (#1099) 2025-08-29 05:22:44 +08:00
proof.go cmd, core, eth, trie: track deleted nodes #22225 #25757 (#1120) 2025-11-12 13:32:22 +05:30
proof_test.go trie: fix some typos #25551 #25648 (#1111) 2025-09-21 18:51:15 +08:00
schema.go core, eth, trie: abstract node scheme #25532 (#1123) 2025-11-17 11:25:08 +05:30
secure_trie.go cmd, core, eth, trie: track deleted nodes #22225 #25757 (#1120) 2025-11-12 13:32:22 +05:30
secure_trie_test.go core, eth, trie: abstract node scheme #25532 (#1123) 2025-11-17 11:25:08 +05:30
stacktrie.go core, eth, trie: abstract node scheme #25532 (#1123) 2025-11-17 11:25:08 +05:30
stacktrie_test.go core, eth, trie: abstract node scheme #25532 (#1123) 2025-11-17 11:25:08 +05:30
sync.go core, eth, trie: abstract node scheme #25532 (#1123) 2025-11-17 11:25:08 +05:30
sync_test.go core, eth, trie: abstract node scheme #25532 (#1123) 2025-11-17 11:25:08 +05:30
trie.go core, eth, trie: abstract node scheme #25532 (#1123) 2025-11-17 11:25:08 +05:30
trie_id.go cmd, core, eth, trie: track deleted nodes #22225 #25757 (#1120) 2025-11-12 13:32:22 +05:30
trie_reader.go cmd, core, eth, trie: track deleted nodes #22225 #25757 (#1120) 2025-11-12 13:32:22 +05:30
trie_test.go core, eth, trie: abstract node scheme #25532 (#1123) 2025-11-17 11:25:08 +05:30
util_test.go trie: wrap deletion in case trie.root is nil #26365 (#1124) 2025-11-17 11:24:11 +05:30
utils.go trie: wrap deletion in case trie.root is nil #26365 (#1124) 2025-11-17 11:24:11 +05:30