Commit graph

1962 commits

Author SHA1 Message Date
Daniel Liu
516883d14c
all: snapshot dump + unify with trie dump #22795 (#1205) 2025-08-22 16:39:28 +08:00
Daniel Liu
d52bfaa5ca
all: introduce trie owner notion #24750 (#1090)
* cmd, core/state, light, trie, eth: add trie owner notion

* all: refactor

* tests: fix goimports

* core/state/snapshot: fix ineffasigns

Co-authored-by: rjl493456442 <garyrong0905@gmail.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
2025-08-22 16:37:39 +08:00
Daniel Liu
ee81b721fc
core, trie: implement trie tracer #24403 (#1088)
Trie tracer is an auxiliary tool to capture all deleted nodes
which can't be captured by trie.Committer. The deleted nodes
can be removed from the disk later.

Co-authored-by: rjl493456442 <garyrong0905@gmail.com>
2025-08-21 13:38:56 +08:00
Daniel Liu
0c57a6c64c
core/state: remove toAddr helper in tests #22772 (#1203)
Co-authored-by: aaronbuchwald <aaron.buchwald56@gmail.com>
2025-08-21 13:38:23 +08:00
Daniel Liu
da624be994
core/state: fix panic in state dumping #22225 (#1202)
Co-authored-by: Martin Holst Swende <martin@swende.se>
2025-08-21 13:37:51 +08:00
Daniel Liu
06d94520ba
core/state: fix some comments #21450 (#1201) 2025-08-21 13:36:45 +08:00
Daniel Liu
eaa1452a53
core/state: add state transition tool for testing #20958 (#1200) 2025-08-20 16:30:34 +08:00
Daniel Liu
9c6816eab6
core/vm: make time field use uint64 #26474 (#1319) 2025-08-20 15:22:06 +08:00
Daniel Liu
9cad0a0cc0
all: create global hasher pool #31769 (#1233)
This PR creates a global hasher pool that can be used by all packages.
It also removes a bunch of the package local pools.

It also updates a few locations to use available hashers or the global
hashing pool to reduce allocations all over the codebase.
This change should reduce global allocation count by ~1%

---------

Co-authored-by: Marius van der Wijden <m.vanderwijden@live.de>
Co-authored-by: Gary Rong <garyrong0905@gmail.com>
2025-08-20 15:11:09 +08:00
Daniel Liu
628e1e52bb
core/state: make GetCodeSize mirror GetCode implementation wise #21056 (#1198)
Co-authored-by: Péter Szilágyi <peterke@gmail.com>
2025-08-20 15:08:05 +08:00
Daniel Liu
9013bfbf6f
core/state: include zero-address in state dump if present #21038 (#1195)
* Include 0x0000 address into the dump if it is present

* core/state: go fmt

Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: Alexey Akhunov <akhounov@gmail.com>
2025-08-20 15:06:37 +08:00
Daniel Liu
a2cf4e3111
core: fix deprecation comment for GenesisAccount #29218 (#1323) 2025-08-08 10:35:58 +08:00
Daniel Liu
34020969ff
all: simplify timestamps to uint64 #19372 (#1318) 2025-08-08 10:33:37 +08:00
Daniel Liu
36374be05f
eth/tracers: move tracing APIs into eth/tracers #22161 #22473 (#1252) 2025-08-08 10:25:43 +08:00
Daniel Liu
cdd6a9eb94
eth: add debug_accountRange API #19645 (#1194)
This new API allows reading accounts and their content by address range.

Co-authored-by: Wenbiao Zheng <delweng@gmail.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: Felix Lange <fjl@twurst.com>
2025-08-08 09:55:17 +08:00
Daniel Liu
8750881da2
trie: remove the sync bloom, used by fast sync #24047 (#1077) 2025-08-08 09:31:26 +08:00
Daniel Liu
3da4549e07
core/state: move state account to core/types + abstracted write account to trie #23567 (#1072) 2025-08-08 09:13:34 +08:00
Daniel Liu
cd407af1aa
core/rawdb: add HasCode, HasTrieNode and use them where possible #24454 (#1211) 2025-08-04 14:42:13 +08:00
Daniel Liu
3620d9930d
core/vm: use clear from go v1.21 #29307 (#1246) 2025-08-04 11:54:49 +08:00
Daniel Liu
f9025ecc91
core/state: unexport NodeIterator #27239 (#1222)
Co-authored-by: Guillaume Ballet <3272758+gballet@users.noreply.github.com>
2025-08-04 11:53:31 +08:00
Daniel Liu
1d9fd6bdd2
core: show db error-info in case of mismatched hash root #26870 (#1220)
When a database failure occurs, bubble it up a into statedb, and report it in suitable places, such as during a 'bad block' report.

Co-authored-by: rjl493456442 <garyrong0905@gmail.com>
2025-08-04 11:51:47 +08:00
Daniel Liu
cb888541c5
core, trie: add state metrics #23433 (#1071) 2025-08-04 11:19:42 +08:00
Daniel Liu
52f5766059
core: pre-allocate in Copy() #25279 (#1213) 2025-07-28 16:57:51 +08:00
Daniel Liu
2eac17980c
core/state: avoid statedb.dbErr due to emptyCode #21051 (#1197) 2025-07-28 16:55:29 +08:00
Daniel Liu
cdd48dd4de
core/state: fix staticcheck warnings #20357 (#1193) 2025-07-28 16:53:27 +08:00
Daniel Liu
77522e51ec
core, trie: decode the value for storage dump #19943 (#1189)
* core, trie: decode the value for storage dump

* core/state: address comment

Co-authored-by: gary rong <garyrong0905@gmail.com>
2025-07-28 16:52:06 +08:00
benjamin202410
db9c3de1dc
add syncinfo pool (#1236)
* add syncinfo message into pool for process later

* add missing file back

---------

Co-authored-by: liam.lai <liam.lai@us>
2025-07-28 01:43:41 -07:00
Daniel Liu
85f08c7732
eth: skip VerifyHeader in traceBlock to fix #1185 (#1265) 2025-07-26 18:18:50 +08:00
Daniel Liu
7bb2c7793b
core/vm: delete unused error #29062 (#1245) 2025-07-26 17:45:31 +08:00
Daniel Liu
6f6e08f83b
core/vm: prevent overflow #29023 (#1244) 2025-07-26 17:44:45 +08:00
Daniel Liu
42d3549e2c
core: using math.MaxUint64 instead of 0xffffffffffffffff #29022 #29024 (#1243) 2025-07-26 17:43:36 +08:00
Daniel Liu
5561c27308
core: fix typos (#1237)
fixes various typos in core

Co-authored-by: 0xbstn <bastien-bouge@hotmail.fr>
2025-07-26 17:42:50 +08:00
Daniel Liu
32b929e781
core/vm/runtime: add Random field to config #28001 (#1234) 2025-07-26 17:41:56 +08:00
Daniel Liu
8f76709a10
core/vm, go.mod: update uint256 to v1.3.2 and use faster method #30868 (#1241) 2025-07-17 17:56:53 +08:00
Daniel Liu
4b4980d949
core/vm: set basefee to 0 internally on eth_call #28470 (#1238) 2025-07-17 17:54:23 +08:00
Daniel Liu
dc01dba464
core/vm: minor code formatting #28199 (#1235)
Adding a space beween function opOrigin() and opcCaller() in instruciton.go.
Adding a space beween function opkeccak256()  and opAddress() in instruciton.go.

Co-authored-by: hzysvilla <ecjgvmhc@gmail.com>
2025-07-17 17:53:02 +08:00
Daniel Liu
c46302cf65
all: fix invalid signer list on checkpoint block for trace api #1185 (#1186) 2025-07-12 06:56:30 +08:00
Daniel Liu
ae006030c6
core: fill blockNumber in logs #26345 (#1215) 2025-07-11 10:53:48 +08:00
Daniel Liu
6f84f67a15
core: rename CommitTrie to commitTrie #25896 (#1214) 2025-07-11 10:48:10 +08:00
Daniel Liu
34a245fbc8
all: use common.FileExist for checking file existence #24748 (#1212) 2025-07-11 10:42:51 +08:00
Daniel Liu
f272ce1123
core/rawdb: add func HasCodeWithPrefix and HasTrieNode #24117 (#1210) 2025-07-11 10:37:10 +08:00
Daniel Liu
9a50df0b62
core/rawdb: do prefixed lookup first #24288 (#1209)
Co-authored-by: Martin Holst Swende <martin@swende.se>
2025-07-11 10:22:26 +08:00
Daniel Liu
495a8b919a
core/state: simplify meter code #24304 (#1208) 2025-07-11 10:15:16 +08:00
Daniel Liu
906f07736e
core/state: remove unuseful code #23092 (#1207) 2025-07-11 10:09:56 +08:00
Daniel Liu
f98fbc7dc7
core/state: fix database leak and copy tests #19306 (#1192)
Co-authored-by: zcheng9 <zcheng9@hawk.iit.edu>
2025-07-11 09:58:59 +08:00
Daniel Liu
ef0fe4ed95
core/state: revert noop finalise, fix copy-commit-copy #20113 (#1191) 2025-07-11 09:52:31 +08:00
Daniel Liu
be97571471
core/state: fix state object deep copy #20100 (#1190) 2025-07-11 09:47:37 +08:00
Daniel Liu
16638e9e17
core/state: avoid unnecessary conversions #19870 (#1188) 2025-07-11 09:42:20 +08:00
Daniel Liu
220b2f4174
core/state: fix random test args #19255 (#1187)
Co-authored-by: Sheldon <11510383@mail.sustc.edu.cn>
2025-07-11 09:37:51 +08:00
Daniel Liu
618a8dd247
core, cmd: streaming json output for command #15475 (#1184) 2025-07-11 09:29:13 +08:00