fix: update CLI commands and test utilities for RocksDB support#21069
Closed
yongkangc wants to merge 8 commits intoyk/rocksdb-init-txlookupfrom
Closed
fix: update CLI commands and test utilities for RocksDB support#21069yongkangc wants to merge 8 commits intoyk/rocksdb-init-txlookupfrom
yongkangc wants to merge 8 commits intoyk/rocksdb-init-txlookupfrom
Conversation
This was referenced Jan 14, 2026
a73a859 to
895eec0
Compare
fff917c to
d8a600c
Compare
This was referenced Jan 14, 2026
895eec0 to
d29b718
Compare
Add utility functions for RocksDB integration in stages: - make_rocksdb_provider() - creates RocksDB provider from UnifiedStorageWriter - make_rocksdb_batch_arg() - creates RocksDB batch for EitherWriter - register_rocksdb_batch() - registers batch with pending batches - collect_shards_for_unwind() - shared logic for history shard unwinding - Add RocksDBIntegrity enum variant for metadata
Add RocksDB unwind support for IndexAccountHistory and IndexStorageHistory stages: - Create RocksDB batch during unwind when storage settings enabled - Use EitherWriter for history shard operations - Register batches with pending_batches for atomic commit
Add RocksDB support for: - Genesis history initialization via EitherWriter - TransactionLookup stage unwind operations - RocksDB provider append_*_history_shard methods - Metrics for RocksDB write operations
Add a single CLI flag to enable RocksDB for all history tables: - --storage.rocksdb enables AccountsHistory, StoragesHistory, and TransactionHashNumbers to be stored in RocksDB instead of MDBX Also adds: - `reth db settings set` subcommands for individual table control - Updated CLI documentation
d29b718 to
477d1da
Compare
gakonst
reviewed
Jan 16, 2026
Member
gakonst
left a comment
There was a problem hiding this comment.
Code Review: PR #21069
CI Status
- ❌ 18 failures (many likely cascading from upstream)
Changes Summary
Updates CLI commands and test utilities for RocksDB support.
Review Notes
This is a plumbing PR that threads RocksDB support through CLI and tests. Main review focus should be on upstream PRs first.
Review by @tempo_ai
ff75aa9 to
b365f5f
Compare
Update various CLI commands and test utilities for RocksDB: - Stage drop command handles RocksDB table clearing - Stage dump commands pass storage settings - Test utilities provide RocksDB stubs - Add PendingRocksDBBatches export
477d1da to
7c1744a
Compare
Add clear() method to RocksDBProvider and its stub implementation to support clearing all entries from a RocksDB table. This is needed by the stage drop CLI command to clear RocksDB history tables. - Adds clear<T: Table>() method that iterates and deletes all entries - Stub implementation returns Ok(()) since stub behaves as empty DB
b365f5f to
a7edbcd
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
CLI commands and test utilities for RocksDB.
Changes
Testing
CLI commands and test utilities verified.
PR Stack