Skip to content

feat: bloom-filtered logs and targeted tx receipts (Ethereum indexer) - #999

Merged
isSerge merged 9 commits into
developfrom
isserge/feat-eth-indexer-bloom
Jul 15, 2026
Merged

feat: bloom-filtered logs and targeted tx receipts (Ethereum indexer)#999
isSerge merged 9 commits into
developfrom
isserge/feat-eth-indexer-bloom

Conversation

@isSerge

@isSerge isSerge commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Moving away from fetching eth_getBlockReceipts for every single block:

  • Introduce bloom filter gating: indexer now completely skips fetching logs for blocks that do not contain contract_address
  • Switch to eth_getLogs: Replaced the heavier eth_getBlockReceipts fetches with targeted eth_getLogs requests (based on positive bloom filter matches)
  • Targeted Execution Confirmations: instead of fetching and processing all receipts, indexer only issues eth_getTransactionReceipt for specific pending transactions currently tracked by the StateManager

Benchmark changes (100 blocks range against local eRPC with warm cache):
catchup_progress: 0.68s [-81.5%]
blocks_per_sec: 146.4 [+438.2%]
total_rpc: 110 [-45.3%]
batch_fetch_ms: 590 [-83.0%]
process_ms: 4 [-85.7%]

@isSerge isSerge changed the title Isserge/feat eth indexer bloom feat: bloom-filtered logs and targeted tx receipts (Ethereum indexer) Jul 14, 2026
@github-actions

Copy link
Copy Markdown

⚠️ Integration tests were re-run (attempt 2)

@isSerge
isSerge marked this pull request as ready for review July 14, 2026 09:53
Comment thread chain-signatures/chain-ethereum/src/indexer.rs

@ppca ppca left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mostly LGTM. Just one comment

@isSerge
isSerge added this pull request to the merge queue Jul 15, 2026
Merged via the queue into develop with commit d7702d5 Jul 15, 2026
6 checks passed
@isSerge
isSerge deleted the isserge/feat-eth-indexer-bloom branch July 15, 2026 06:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants