Summary
Add an EVM database wrapper that routes block-related data into heightindexdb while keeping non-block data on the existing KV store. This is intended to reduce KV usage/compaction pressure.
Scope
- Block routing:
- Wrap the existing EVM
ethdb.Database.
- Route block headers, bodies, and receipts to height-indexed databases.
- Keep all non-block data on the underlying KV store.
- Integration with
x/blockdb:
- Store headers/bodies/receipts in dedicated height-indexed stores managed by
x/blockdb.
- Migration:
- Provide a mechanism to migrate existing canonical block data from the KV store into the new height-indexed databases.
- Migration should be safe to run in the background and resilient across restarts.