Commits
Click on a commit to change the comparison rangefeat(stages): add RocksDB support for IndexStorageHistoryStage
This PR adds RocksDB support for the IndexStorageHistoryStage, following the
same pattern established in #21165 for IndexAccountHistoryStage.
Changes:
- Add RocksDBProviderFactory and StorageSettingsCache trait bounds to the Stage impl
- Use EitherWriter::new_storages_history with explicit #[cfg] blocks for RocksDB batch creation
- Add helper functions for loading/flushing storage history shards:
- load_storage_history_indices_with_writer - iterate collector, merge with existing shards
- get_last_storage_history_shard - read from RocksDB or MDBX based on settings
- write_storage_history_shards_keep_last - write full shards, keep partial in memory
- flush_storage_history_shards - write all remaining shards with u64::MAX for last
- Only clear MDBX table on first sync if not using RocksDB
- Add rocksdb_tests module with tests for:
- execute_writes_to_rocksdb_when_enabled
- unwind_deletes_from_rocksdb_when_enabled
- execute_incremental_sync
Part of #20593 - Move secondary indices to RocksDB10 hours ago
by yongkangc