go-ethereum/trie
Daniel Liu 3bb3f80f5b
core/state: add account address to Trie slot accessors #26934 (#1140)
This changes the Trie interface to add the plain account address as a
parameter to all storage-related methods.

After the introduction of the TryAccount* functions, TryGet, TryUpdate and
TryDelete are now only meant to read an account's storage. In their current
form, they assume that an account storage is stored in a separate trie, and
that the hashing of the slot is independent of its account's address.

The proposed structure for a stateless storage breaks these two
assumptions: the hashing of a slot key requires the address and all slots
and accounts are stored in a single trie.

This PR therefore adds an address parameter to the interface. It is ignored
in the MPT version, so this change has no functional impact, however it
will reduce the diff size when merging verkle trees.

Co-authored-by: Guillaume Ballet <3272758+gballet@users.noreply.github.com>
2025-12-23 15:39:56 +05:30
..
committer.go core/state, trie: port changes from PBSS #26763 (#1137) 2025-12-22 12:03:56 +05:30
database.go core/state, trie: port changes from PBSS #26763 (#1137) 2025-12-22 12:03:56 +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 core, trie: port changes from pbss #26637 (#1127) 2025-12-07 15:38:38 +05:30
errors.go all: introduce trie owner notion #24750 (#1090) 2025-08-22 16:37:39 +08:00
hasher.go all: use WaigGroup.Go() to simplify code (#1699) 2025-11-29 17:17:08 +05:30
iterator.go core, trie: port changes from pbss #26637 (#1127) 2025-12-07 15:38:38 +05:30
iterator_test.go core/state, trie: remove unused error-return from trie Commit operation #26641 (#1135) 2025-12-08 15:05:11 +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 core/state, trie: port changes from PBSS #26763 (#1137) 2025-12-22 12:03:56 +05:30
preimages.go core, eth, trie: rework preimage store #25287 (#1099) 2025-08-29 05:22:44 +08:00
proof.go core/state, trie: port changes from PBSS #26763 (#1137) 2025-12-22 12:03:56 +05:30
proof_test.go trie: reduce unit test time #26918 (#1139) 2025-12-19 11:46:35 +04:00
secure_trie.go core/state: add account address to Trie slot accessors #26934 (#1140) 2025-12-23 15:39:56 +05:30
secure_trie_test.go core/state, trie: remove unused error-return from trie Commit operation #26641 (#1135) 2025-12-08 15:05:11 +05:30
stacktrie.go trie: add error-checks #26914 (#1138) 2025-12-19 11:47:02 +04:00
stacktrie_test.go core, trie: port changes from pbss #26637 (#1127) 2025-12-07 15:38:38 +05:30
sync.go core, trie: prepare for path-based trie storage #26603 (#1126) 2025-11-18 11:20:00 +05:30
sync_test.go trie: reduce unit test time #26918 (#1139) 2025-12-19 11:46:35 +04:00
tracer.go core/state, trie: port changes from PBSS #26763 (#1137) 2025-12-22 12:03:56 +05:30
tracer_test.go core/state, trie: port changes from PBSS #26763 (#1137) 2025-12-22 12:03:56 +05:30
trie.go core/state, trie: port changes from PBSS #26763 (#1137) 2025-12-22 12:03:56 +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/state, trie: port changes from PBSS #26763 (#1137) 2025-12-22 12:03:56 +05:30