rjl493456442
bfda8ae0c6
core: add metrics for state access ( #30353 )
...
This pull request adds a few more performance metrics, specifically:
- The average time cost of an account read
- The average time cost of a storage read
- The rate of account reads
- The rate of storage reads
2024-08-26 20:02:10 +08:00
rjl493456442
4ad88e9463
triedb/pathdb: print out all trie owner and hash information ( #30200 )
...
This pull request explicitly prints out the full hash for debugging
purpose.
2024-07-24 20:32:28 +08:00
rjl493456442
f59d013e40
core/rawdb, triedb, cmd: create an isolated disk namespace for verkle ( #30105 )
...
* core, triedb/pathdb, cmd: define verkle state ancient store
* core/rawdb, triedb: add verkle namespace in pathdb
2024-07-16 16:17:58 +03:00
rjl493456442
b530d8e455
trie, triedb: remove unnecessary child resolver interface ( #30167 )
2024-07-16 18:52:19 +08:00
lilasxie
19c3c1e205
triedb/pathdb: fix flaky test in pathdb ( #29901 )
2024-06-28 21:15:54 +08:00
rjl493456442
045b9718d5
trie: relocate state execution logic into pathdb package ( #29861 )
2024-06-27 20:30:39 +08:00
maskpp
c736b04d9b
triedb/pathdb: use maps.Clone and maps.Keys ( #29985 )
2024-06-17 17:09:29 +02:00
maskpp
115d154392
trie, triedb/pathdb: prealloc capacity for map and slice ( #29986 )
2024-06-17 11:42:41 +02:00
Darioush Jalali
fd5078c779
trie/triedb: add Reader to backend interface ( #29988 )
2024-06-14 14:52:46 +08:00
jwasinger
69351e8b0f
core/state, eth/protocols, trie, triedb/pathdb: remove unused error from trie Commit ( #29869 )
...
* core/state, eth/protocols, trie, triedb/pathdb: remove unused error return from trie Commit
* move set back to account-trie-update block scoping for easier readability
* address review
* undo tests submodule change
* trie: panic if BatchSerialize returns an error in Verkle trie Commit
* trie: verkle comment nitpicks
---------
Co-authored-by: Péter Szilágyi <peterke@gmail.com>
2024-06-12 12:23:16 +03:00
rjl493456442
b88051ec83
core/rawdb, triedb/pathdb: fix freezer read-only option ( #29823 )
2024-05-28 14:41:11 +02:00
maskpp
2c67fab0d7
trie/pathdb: preallocate map capacity ( #29690 )
...
* preallocated capacity for map's certain usege of memory
* preallocated capacity for map's certain usege of memory
2024-05-02 12:35:45 +03:00
rjl493456442
9f96e07c1c
core/rawdb, trie: improve db APIs for accessing trie nodes ( #29362 )
...
* core/rawdb, trie: improve db APIs for accessing trie nodes
* triedb/pathdb: fix
2024-04-30 16:25:35 +02:00
rjl493456442
f46c878441
core/rawdb: implement in-memory freezer ( #29135 )
2024-04-30 11:33:22 +02:00
Martin HS
853e0c23f3
eth/catalyst, trie/pathdb: fix flaky tests ( #29571 )
...
This change fixes three flaky tests `TestEth2AssembleBlock`,`TestEth2NewBlock`, `TestEth2PrepareAndGetPayload` and `TestDisable`.
---------
Co-authored-by: Gary Rong <garyrong0905@gmail.com>
2024-04-23 10:33:36 +02:00
Abirdcfly
b179b7b8e7
all: remove duplicate word in comments ( #29531 )
...
This change removes some duplicate words in in comments
2024-04-15 08:34:31 +02:00
Guillaume Ballet
da7469e5c4
core: add an end-to-end verkle test ( #29262 )
...
core: add a simple verkle test
triedb, core: skip hash comparison in verkle
core: remove legacy daoFork logic in verkle chain maker
fix: nil pointer in tests
triedb/pathdb: add blob hex
core: less defensive
Co-authored-by: Ignacio Hagopian <jsign.uy@gmail.com>
Co-authored-by: Martin HS <martin@swende.se>
Co-authored-by: Gary Rong <garyrong0905@gmail.com>
2024-03-26 21:25:41 +01:00
Aaron Chen
723b1e36ad
all: fix mismatched names in comments ( #29348 )
...
* all: fix mismatched names in comments
* metrics: fix mismatched name in UpdateIfGt
2024-03-26 21:01:28 +01:00
Martin HS
14cc967d19
all: remove dependency on golang.org/exp ( #29314 )
...
This change includes a leftovers from https://github.com/ethereum/go-ethereum/pull/29307
- using the [new `slices` package](https://go.dev/doc/go1.21#slices ) and
- using the [new `cmp.Ordered`](https://go.dev/doc/go1.21#cmp ) instead of exp `constraints.Ordered`
2024-03-25 07:50:18 +01:00
rjl493456442
6490d9897a
cmd, triedb: implement history inspection ( #29267 )
...
This pull request introduces a database tool for inspecting the state history.
It can be used for either account history or storage slot history, within a
specific block range.
The state output format can be chosen either with
- the "rlp-encoded" values (those inserted into the merkle trie)
- the "rlp-decoded" value (the raw state value)
The latter one needs --raw flag.
2024-03-22 20:12:10 +08:00
Darioush Jalali
f46fe62c5d
triedb/hashdb: Avoid setting db.cleans on Close ( #29309 )
2024-03-22 19:38:24 +08:00
rjl493456442
15eb9773f9
triedb/pathdb: improve tests ( #29278 )
2024-03-19 10:50:08 +08:00
rjl493456442
7b81cf6362
core/state, trie/triedb/pathdb: remove storage incomplete flag ( #28940 )
...
As SELF-DESTRUCT opcode is disabled in the cancun fork(unless the
account is created within the same transaction, nothing to delete
in this case). The account will only be deleted in the following
cases:
- The account is created within the same transaction. In this case
the original storage was empty.
- The account is empty(zero nonce, zero balance, zero code) and
is touched within the transaction. Fortunately this kind of accounts
are not-existent on ethereum-mainnet.
All in all, after cancun, we are pretty sure there is no large contract
deletion and we don't need this mechanism for oom protection.
2024-03-05 14:31:55 +01:00
psogv0308
35cebc1687
triedb/pathdb: changed the test code to check for verifying state ( #29150 )
...
Co-authored-by: this-is-iron <iron@superblock.co>
2024-03-04 11:03:53 +01:00
Péter Szilágyi
865e1e9f57
cmd/utils, core/rawdb, triedb/pathdb: flip hash to path scheme ( #29108 )
...
* cmd/utils, core/rawdb, triedb/pathdb: flip hash to path scheme
* graphql: run tests in hash mode as the chain maker needs it
2024-02-29 12:40:59 +02:00
yzb
db4cf69166
all: replace fmt.Errorf() with errors.New() if no param required ( #29126 )
...
replace-fmt-errorf
Co-authored-by: yzb@example.cn <yzb@example.cn>
2024-02-29 11:56:46 +02:00
rjl493456442
5bae14f9df
triedb/pathdb: fix panic in recoverable ( #29107 )
...
* triedb/pathdb: fix panic in recoverable
* triedb/pathdb: add todo
* triedb/pathdb: rename
* triedb/pathdb: rename
2024-02-28 14:40:28 +02:00
rjl493456442
49623bd469
core, triedb/pathdb: calculate the size for batch pre-allocation ( #29106 )
...
* core, triedb/pathdb: calculate the size for batch pre-allocation
* triedb/pathdb: address comment
2024-02-28 14:23:52 +02:00
rjl493456442
fe91d476ba
all: remove the dependency from trie to triedb ( #28824 )
...
This change removes the dependency from trie package to triedb package.
2024-02-13 14:49:53 +01:00