Commit Graph

12561 Commits

Author SHA1 Message Date
yongkangc
96673921e6 comment 2025-12-23 08:59:29 +00:00
yongkangc
5910807b94 reverted 2025-12-23 08:53:48 +00:00
yongkangc
ef678bfe37 fix: unwind when rocksdb history lags checkpoint 2025-12-23 08:47:16 +00:00
yongkangc
8eb4ba2f65 feat(provider): add check_file_consistency for proper ordering
Addresses Joshi's review comment about consistency check ordering.

The ordering is now:
1. check_file_consistency() - heals NippyJar files without pruning
2. rocksdb check_consistency() - needs static file tx data
3. static file check_consistency() - compares with MDBX, may prune

This ensures RocksDB can access transaction data before static files
potentially prune it during checkpoint comparison.
2025-12-23 08:19:11 +00:00
YK
9ff7a228b3 del 2025-12-23 16:06:48 +08:00
yongkangc
a2fec130f6 fix: adapt to #20508 API and add const to stub functions
- Remove non-existent check_file_consistency() call
- Simplify ordering: static file check first, then RocksDB check
- Add const to first() and last() stub functions
2025-12-23 04:20:34 +00:00
yongkangc
8a7a0f2f16 fix: make stub iter return empty iterator instead of error
This is consistent with first() and last() returning Ok(None) -
the stub behaves as if the database is empty rather than unavailable.
2025-12-23 04:17:07 +00:00
yongkangc
d3e812a985 fix: update consistency check ordering per Joshi's feedback
Reorder consistency checks as follows:
1. StaticFileProvider::check_file_consistency() - heals interrupted writes
2. RocksDB::check_consistency() - uses static file data for tx hash pruning
3. StaticFileProvider::check_consistency() - compares with MDBX checkpoints

This ensures RocksDB can access transaction data before static files prune it.

Amp-Thread-ID: https://ampcode.com/threads/T-019b3076-f7ed-700d-8916-779712facb8e
2025-12-23 04:17:07 +00:00
yongkangc
5dc4b5248e fix: address Joshi's review comments
- Revert 'allow RocksDB unwind to 0' - keep panic on unwind to 0 as it would
  leave MDBX with huge free list size
- Remove checked_add overflow protection (not needed in practice)
- Created issue #20506 for refactoring StaticFileProvider::check_consistency

Amp-Thread-ID: https://ampcode.com/threads/T-019b3076-f7ed-700d-8916-779712facb8e
2025-12-23 04:17:07 +00:00
yongkangc
d358d62353 fix: allow RocksDB unwind to block 0 for migration scenario
Address review feedback: nodes migrating to RocksDB will commonly trigger
unwind to block 0, which is expected. Only panic if static files also
require unwind to 0 (indicating corruption). Otherwise, warn and proceed
with full resync.
2025-12-23 04:17:07 +00:00
yongkangc
f741dd4792 fix(storage): address review findings for RocksDB consistency check
- Add missing methods to rocksdb_stub.rs (batch, first, last, iter, commit, RocksDBIter)
- Add checkpoint > 0 guard in (None, Some(highest_tx)) case for TransactionHashNumbers
- Use checked_add for mdbx_tx + 1 to prevent u64 overflow
- Update misleading docstring in stub's RocksDBProvider::new

Amp-Thread-ID: https://ampcode.com/threads/T-019b3076-f7ed-700d-8916-779712facb8e
2025-12-23 04:17:07 +00:00
yongkangc
3c776bbbc8 fix: add const to stub check_consistency fn 2025-12-23 04:17:07 +00:00
yongkangc
2a77d5f6de chore: format code 2025-12-23 04:17:07 +00:00
yongkangc
fb8eb0e3e6 feat(storage): add RocksDB consistency check on startup
Amp-Thread-ID: https://ampcode.com/threads/T-019b2fb1-ce5c-7251-b454-0d7472a0754a
2025-12-23 04:17:00 +00:00
DaniPopes
353c2a7f70 fix(cli): remove unnecessary bound from Cli::configure (#20583) 2025-12-23 03:52:04 +00:00
Matthias Seitz
21934d9946 fix: fuse shutdown (#20580) 2025-12-23 01:09:45 +00:00
cui
538de9e456 feat: update fork id in discv5[WIP] (#19139)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-23 00:30:36 +00:00
forkfury
b9d14d4a54 chore: delete redundant todo comment (#20571) 2025-12-23 00:14:05 +00:00
Matthew Vauxhall
529aa83777 chore: remove block_to_payload_v3 (#20540)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-23 00:10:38 +00:00
DaniPopes
da10201b88 chore: minor reth-bench cleanup (#20577) 2025-12-22 23:56:36 +00:00
Arsenii Kulikov
eec76a3faf perf: spawn prewarm workers in parallel (#20575) 2025-12-22 20:41:52 +00:00
Arsenii Kulikov
5e4a219182 perf: spawn prewarming before multiproof (#20572)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2025-12-22 17:56:14 +00:00
AJStonewee
ccb897f9a0 refactor(stages): cache hashed address in storage hashing loop (#20318)
Co-authored-by: Brian Picciano <me@mediocregopher.com>
2025-12-22 16:05:46 +00:00
radik878
f9d872e9cb fix(net): correct config builder doc comments (#20299) 2025-12-22 16:00:47 +00:00
Matthias Seitz
642bbea2a8 perf: make BlockState::parent_state_chain return iterator (#20496)
Co-authored-by: Claude <noreply@anthropic.com>
2025-12-22 15:58:46 +00:00
fuder.eth
1c4233d1b4 chore: prevent false-positive log when peer not found in transaction propagation (#20523) 2025-12-22 15:55:41 +00:00
Lorsmirq Benton
eeb2d55f44 docs: add debug execution witness methods to pruning tables (#20561) 2025-12-22 15:53:58 +00:00
fig
96c77fd8b2 feat(storage): make insert_block() operate with references (#20504)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-22 15:13:43 +00:00
VolodymyrBg
ed7a5696b7 fix(engine): sync invalid header cache count gauge on hit eviction (#20567) 2025-12-22 14:59:18 +00:00
Brian Picciano
5a3cffa3e9 fix(stage): Don't clear merkle changesets in unwind near genesis (#20568) 2025-12-22 14:56:18 +00:00
YK
535d97f39e refactor(provider): extract heal_segment for NippyJar consistency (#20508) 2025-12-22 14:01:12 +00:00
DaniPopes
f3aea8dac0 chore: simplify size functions (#20560) 2025-12-22 11:14:50 +00:00
Matthias Seitz
807fac0409 chore: use clone_into_consensus (#20530) 2025-12-22 12:15:09 +01:00
Brian Picciano
7b2fbdcd51 chore(db): Remove Sync from DbTx (#20516) 2025-12-22 10:13:57 +00:00
Merkel Tranjes
3b8acd4b07 feat(payload): add transaction_count to ExecutionPayload trait (#20534) 2025-12-22 10:07:31 +01:00
YK
62abfdaeb5 feat(cli): add tracing-samply to profiling (#20546) 2025-12-21 11:52:26 +00:00
emmmm
256a9fdb79 docs: add missing trace methods to pruning tables (#20547) 2025-12-21 12:40:58 +01:00
github-actions[bot]
4d9aff99bf chore(deps): weekly cargo update (#20545)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
2025-12-21 12:40:14 +01:00
Vitalyr
28bb2891bb refactor(consensus): simplify verify_receipts return (#20517) 2025-12-20 19:05:50 +01:00
kurahin
1d8f265744 chore(net): remove stale ECIES rand TODO (#20531) 2025-12-20 19:05:37 +01:00
Matthias Seitz
c754caf8c7 fix: remove stale blobs (#20528) 2025-12-20 15:35:22 +00:00
cui
e1b0046329 chore: remove todo after jovian fork (#20535)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2025-12-20 15:31:08 +00:00
cui
ddfe177578 chore: remove todo (#20533)
Co-authored-by: weixie.cui <weixie.cui@okg.com>
2025-12-20 15:19:53 +00:00
Gigi
178558c6d7 fix(tree): correct block buffer eviction policy comment (#20512) 2025-12-20 09:44:51 +00:00
Emilia Hane
f4d3a9701f chore(trie): Rm redundant clone of propagated error (#20466)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2025-12-20 08:42:20 +00:00
Gigi
42e41a9370 docs: add reth JSON-RPC namespace documentation (#20522) 2025-12-20 08:03:06 +00:00
pepes
a66dcce834 chore(evm): remove deprecated state_change compatibility alias (#20518) 2025-12-20 07:50:12 +00:00
Arsenii Kulikov
21d835cf2b perf: use LRU eviction policy for precompile cache (#20527) 2025-12-20 02:12:42 +00:00
Alexey Shekhirin
29438631be fix: propagate keccak-cache-global feature to reth-node-core (#20524) 2025-12-19 17:11:41 +00:00
Brian Picciano
0eb4e0ce29 fix(stages): Fix two bugs related to stage checkpoints and pipeline syncs (#20521) 2025-12-19 16:09:57 +00:00