Evaluate moving from hash indexing to hash + number
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Refactor
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- rust
- Domain
- databases, performance
Research direction
Start by locating the database definitions and access paths for the Headers, Bodies, Receipts, and TransactionLocations tables. Measure current hash-based lookups and identify iteration, reorg, or nearby-block workloads to compare against a (block_number, index) key. Done means a documented benchmark-based decision on whether the alternative is faster.
Written by the indexing model from the issue text.
Description
Tables like Headers, Bodies, Receipts and TransactionLocations are indexed by block hash, as it's a unique identifier (block number isn't). However, it doesn't grant order. If we have (block_number, index) as the key, then we can have proximity in disk of blocks that are close together in time, potentially making the access to blocks that are near each other (for iterations, reorgs, etc) faster.
If db access performance becomes a blocker, this idea is worth exploring and measuring to check if it's effectively faster than normal hash indexing.
- Dominant language
- Rust
- Stars
- 897
- Forks
- 229
- Avg merge
- 1d 5h
- Merged PRs (30d)
- 44
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from lambdaclass/ethrex
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
lambdaclass/ethrex#7246 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
lambdaclass/ethrex#7107 ·
-
L2
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
lambdaclass/ethrex#7026 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
lambdaclass/ethrex#6912 ·
-
performance syncing
Difficulty 1/5 Under an hour Newbie friendliness 72/100
lambdaclass/ethrex#6483 ·
All issues in lambdaclass/ethrex
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
kwakseongjae/auto-hwp#319 ·
-
area:cli bug filter-quality good first issue priority:medium
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100
bevyengine/bevy#25861 ·
-
comp-datalake
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
ClickHouse/ClickHouse#121222 ·
-
enhancement remote
Difficulty 2/5 1-3 hours Newbie friendliness 68/100