yongkangc
bcb90854c2
fix(trie): remove needless borrow in test helper
2026-01-06 11:13:47 +00:00
yongkangc
6a100d6175
fix(trie): fix let-chain syntax and clippy warnings
...
- Replace Rust 2024 let-chains with nested if statements
- Add #[allow(clippy::collapsible_if)] to suppress false positive
2026-01-06 04:51:02 +00:00
yongkangc
80082c330d
fix(trie): reset last_key in write_storage_trie_updates_sorted and add tests
...
- Reset last_key when writing storage updates to prevent stale cursor position
- Add comprehensive tests for cursor locality optimization covering:
- Forward sequential seeks
- Backward seek fallback
- Cursor exhaustion
- Address switching
- Reset behavior
Amp-Thread-ID: https://ampcode.com/threads/T-019b9193-8ae8-753e-abbd-21b1a58f2c6c
2026-01-06 04:46:11 +00:00
yongkangc
4a2b60aeca
perf(trie): add cursor locality optimization for storage cursors
...
Implement locality optimization for DatabaseStorageTrieCursor and
DatabaseHashedStorageCursor that tracks the last key returned by the
cursor. When seeking forward from the current position, the cursor now
uses next_dup/next_dup_val (O(1)) to walk forward instead of performing
expensive seek_by_key_subkey operations (O(log N)).
This optimization targets the hot path identified in profiling data where
StorageTrie showed 100% seeks (729.5K ops) and HashedStorages showed 76%
seeks (2.5M ops) during state root calculation.
The optimization:
- Tracks last_key in both cursor types
- When seek target > last_key, walks forward using next_dup
- When seek target == last_key, returns cached current position
- Falls back to seek_by_key_subkey for backward seeks or unpositioned cursor
- Resets last_key when switching storage address
2026-01-06 02:17:52 +00:00
VolodymyrBg
4d1c2c4939
refactor(ethereum): cache RLP lengths in ethereum payload builder ( #20758 )
2026-01-05 20:00:26 +00:00
NaCl-Ezpz
39b2dc8f4f
chore: era decompression bounds ( #20423 )
...
Co-authored-by: NaCl <nacl@gaysex.local >
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de >
2026-01-05 19:50:41 +00:00
Karl Yu
e9e940919a
feat: make metrics layer configurable ( #20703 )
2026-01-05 19:30:42 +00:00
ethfanWilliam
b6f95866cc
feat(primitives-traits): add set_timestamp to test utils ( #20756 )
2026-01-05 19:20:09 +00:00
DaniPopes
fa05d19f1b
fix(bench-compare): add backward compat for old CSV format ( #20754 )
2026-01-05 17:58:20 +00:00
bobtajson
981d1da41a
chore(chain-state): remove needless collect in test assertions ( #20736 )
2026-01-05 17:22:58 +00:00
andrewshab
5ded234131
docs: update NetworkInner struct definition in network.md ( #20752 )
2026-01-05 17:09:23 +00:00
Hwangjae Lee
cfeaedd389
docs(net): fix typos in comments ( #20751 )
...
Signed-off-by: Hwangjae Lee <meetrick@gmail.com >
2026-01-05 17:07:33 +00:00
Mablr
7779d484a3
feat(optimism): Flashblock Receipts Stream ( #20061 )
...
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de >
2026-01-05 16:58:05 +00:00
cui
790a73cd2a
chore: update todo ( #20693 )
2026-01-05 15:13:07 +00:00
cui
39e2c5167a
feat: remove todo ( #20692 )
2026-01-05 15:03:46 +00:00
Satoshi Nakamoto
0f1bec0ad1
docs(network): sync struct definitions with sour ( #20747 )
2026-01-05 15:02:01 +00:00
cui
17c1365368
perf: prealloc vector ( #20713 )
...
Co-authored-by: weixie.cui <weixie.cui@okg.com >
2026-01-05 13:57:24 +00:00
cui
a7841919d9
perf: prealloc vector ( #20716 )
...
Co-authored-by: weixie.cui <weixie.cui@okg.com >
2026-01-05 13:56:28 +00:00
cui
0dbbb3ff37
perf: prealloc B256Map ( #20720 )
...
Co-authored-by: weixie.cui <weixie.cui@okg.com >
2026-01-05 13:54:10 +00:00
cui
96ff33120e
perf: prealloc vec ( #20721 )
...
Co-authored-by: weixie.cui <weixie.cui@okg.com >
2026-01-05 13:53:17 +00:00
cui
f920ffd5f9
refactor: simplify code ( #20722 )
...
Co-authored-by: weixie.cui <weixie.cui@okg.com >
2026-01-05 13:52:48 +00:00
GarmashAlex
da1d7e542f
refactor(rpc): remove unused BlockTransactionsResponseSender ( #20696 )
2026-01-05 13:52:01 +00:00
Satoshi Nakamoto
186208fef9
docs: fix doc comment errors ( #20746 )
2026-01-05 13:07:30 +00:00
cui
5265079654
perf: avoid one vec alloc ( #20717 )
...
Co-authored-by: weixie.cui <weixie.cui@okg.com >
2026-01-05 12:40:03 +00:00
cui
9ca5cffaee
chore: update alloy ( #20709 )
...
Co-authored-by: weixie.cui <weixie.cui@okg.com >
2026-01-05 12:05:59 +00:00
Satoshi Nakamoto
b51ce5c155
docs(network): sync request handler structs with source ( #20726 )
2026-01-05 11:56:07 +00:00
andrewshab
8e9e595799
docs: update db.md BodyStage unwind implementation ( #20727 )
2026-01-05 11:54:57 +00:00
Satoshi Nakamoto
b77898c00d
docs: fix doc comment errors ( #20728 )
2026-01-05 11:53:35 +00:00
cui
58b0125784
refactor: optimize check whether all blobs ready ( #20711 )
...
Co-authored-by: weixie.cui <weixie.cui@okg.com >
2026-01-05 11:53:06 +00:00
cui
e8cc91ebc2
fix: inclusive range off-by-one ( #20729 )
...
Co-authored-by: weixie.cui <weixie.cui@okg.com >
2026-01-05 11:39:38 +00:00
cui
59486a64d4
fix: to block should not sub one ( #20730 )
...
Co-authored-by: weixie.cui <weixie.cui@okg.com >
2026-01-05 11:35:22 +00:00
Hwangjae Lee
b1263d4651
docs(evm): fix typos and remove stale TODO ( #20742 )
...
Signed-off-by: Hwangjae Lee <meetrick@gmail.com >
2026-01-05 11:25:42 +00:00
kurahin
a79432ffc6
docs: fix discv5 multiaddr peer id conversion comment ( #20743 )
2026-01-05 11:22:32 +00:00
Karl Yu
480029a678
feat: optimize send_raw_transaction_sync receipts fetching ( #20689 )
2026-01-05 11:22:04 +00:00
DaniPopes
66f3453b3c
feat(reth-bench-compare): add per-build features and rustflags args ( #20744 )
2026-01-05 11:11:23 +00:00
github-actions[bot]
3d4efdb271
chore(deps): weekly cargo update ( #20735 )
...
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com >
2026-01-04 11:31:03 +00:00
Doohyun Cho
5ac9184ba6
perf(era-utils): replace Box<dyn Fn> with function pointer ( #20701 )
2026-01-03 10:46:42 +00:00
Rej Ect
0e6efdb91c
chore: bump license year to 2026 ( #20704 )
2026-01-03 10:45:34 +00:00
zhygis
986e07f21a
feat(cli): make Cli extensible with custom subcommands ( #20710 )
...
Co-authored-by: Amp <amp@ampcode.com >
2026-01-03 10:41:56 +00:00
Sophia Raye
5307da4794
docs(eth-wire): sync code examples with source ( #20724 )
2026-01-03 11:45:07 +01:00
Karl Yu
0c69e294c3
chore: optimize evm_env if header is available ( #20691 )
2025-12-31 13:45:35 +00:00
かりんとう
dc931f5669
chore: use chain_id() method instead of direct field access in prometheus setup ( #20687 )
2025-12-31 08:53:44 +00:00
Hwangjae Lee
9cfe5c7363
fix(ipc): trim leading whitespace in StreamCodec decode ( #20615 )
...
Signed-off-by: Hwangjae Lee <meetrick@gmail.com >
2025-12-31 08:51:56 +00:00
fig
454b060d5a
chore(tree): use with_capacity at collect_blocks_for_canonical_unwind() ( #20682 )
2025-12-30 12:32:02 +00:00
Matthias Seitz
0808bd67c2
chore: shrink outgoing broadcast messages ( #20672 )
2025-12-30 11:30:37 +00:00
iPLAY888
3b4bc77532
docs(network): update FetchClient struct to use NetworkPrimitives generic ( #20680 )
2025-12-30 11:23:12 +00:00
Sophia Raye
4eaa5c7d46
docs(eth-wire): add missing eth/70 message types ( #20676 )
2025-12-30 10:25:43 +00:00
iPLAY888
34c6b8d81c
docs(network): update Swarm struct to use NetworkPrimitives generic ( #20677 )
2025-12-30 10:12:00 +00:00
Matthias Seitz
f79fdf3564
perf: pre-alloc removed vec ( #20679 )
2025-12-30 10:09:39 +00:00
Karl Yu
16f75bb0c3
feat: avoid mutex locking ( #20678 )
2025-12-30 09:28:40 +00:00