go-ethereum/tests
Ng Wei Han 01b39c96bf
core/state, core/tracing: new state update hook (#33490)
### Description
Add a new `OnStateUpdate` hook which gets invoked after state is
committed.

### Rationale
For our particular use case, we need to obtain the state size metrics at
every single block when fuly syncing from genesis. With the current
state sizer, whenever the node is stopped, the background process must
be freshly initialized. During this re-initialization, it can skip some
blocks while the node continues executing blocks, causing gaps in the
recorded metrics.

Using this state update hook allows us to customize our own data
persistence logic, and we would never skip blocks upon node restart.

---------

Co-authored-by: Gary Rong <garyrong0905@gmail.com>
2026-01-08 11:07:19 +08:00
..
evm-benchmarks@d8b88f4046 tests: update evm-benchmarks (#26255) 2022-11-28 11:13:41 +01:00
fuzzers tests/fuzzers: remove unused field from kv struct in rangeproof fuzzer (#33447) 2025-12-19 09:13:00 +08:00
solidity all: update license headers and AUTHORS from git history (#24947) 2022-05-24 20:39:40 +02:00
testdata@81862e4848 tests/testdata: revert to v17.0 2025-04-10 23:55:06 +02:00
block_test.go build: update to execution-spec-tests v5.0.0 (#32592) 2025-09-18 22:58:40 +02:00
block_test_util.go core/state, core/tracing: new state update hook (#33490) 2026-01-08 11:07:19 +08:00
difficulty_test.go all: remove TerminalTotalDifficultyPassed (#30609) 2024-10-23 08:26:18 +02:00
difficulty_test_util.go all: add whitespace linter (#25312) 2022-07-25 13:14:03 +03:00
gen_btheader.go build, tests: add execution-spec-tests (#26985) 2023-08-26 15:42:27 +02:00
gen_difficultytest.go all: simplify timestamps to uint64 (#19372) 2019-04-02 23:28:48 +03:00
gen_stauthorization.go core/types: change SetCodeTx.ChainID to uint256 (#30982) 2025-01-14 06:42:18 -07:00
gen_stenv.go tests: add currentExcessBlobGas to state tests (#28735) 2023-12-28 11:39:28 +01:00
gen_sttransaction.go all: implement eip-7702 set code tx (#30078) 2024-12-16 11:29:37 +01:00
init.go cmd/evm/internal/t8ntool, trie: support for verkle-at-genesis, use UBT, and move the transition tree to its own package (#32445) 2025-11-14 15:25:30 +01:00
init_test.go build: update EEST fixtures to prague devnet-6 (#31088) 2025-02-06 12:33:40 +01:00
rlp_test.go tests: get test name from testing.T (#22941) 2021-05-25 22:47:14 +02:00
rlp_test_util.go internal,tests: replace noarg fmt.Errorf with errors.New (#27335) 2023-05-25 02:54:28 -04:00
state_test.go cmd, tests: fix snapshot dump and export-preimages (#32650) 2025-09-22 14:48:18 +08:00
state_test_util.go core: refactor StateProcessor to accept ChainContext interface (#32739) 2025-10-02 14:34:06 +02:00
transaction_test.go build: update to execution-spec-tests v5.0.0 (#32592) 2025-09-18 22:58:40 +02:00
transaction_test_util.go all: replace fmt.Errorf with errors.New (#32286) 2025-07-28 10:13:18 +02:00