flatkv iteration#3523
Conversation
PR SummaryMedium Risk Overview Iterator stack: New FlatKV Concurrency: Adds Extensive unit/differential tests cover ranges, overlap, tombstones, domain bounds, and concurrent snapshot behavior. Reviewed by Cursor Bugbot for commit 4f08135. Bugbot is set up for automated code reviews on this repo. Configure here. |
|
The latest Buf updates on your PR. Results from workflow Buf / buf (pull_request).
|
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #3523 +/- ##
==========================================
- Coverage 59.03% 58.47% -0.56%
==========================================
Files 2199 2153 -46
Lines 182207 177253 -4954
==========================================
- Hits 107569 103657 -3912
+ Misses 64975 64260 -715
+ Partials 9663 9336 -327
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
|
|
||
| /* Data flow: buildEvmIterator | ||
|
|
||
| buildCodeLane ──────────────┐ |
There was a problem hiding this comment.
buildLegacyDBLane, buildCodeLane, buildStorageLane, buildAccountNonceLane, and buildAccountCodehashLane are ~90% identical (serializer → NewMapIterator → pebble NewIter → NewMergingIterator(ascending, pebble, pending) → NewTransformingIterator).
how about abstract code to something like:
func buildLane[T vtype.VType](
pending map[string]T, db seidbtypes.KeyValueDB,
lower, upper []byte, ascending bool,
serialize func(T) ([]byte, error),
transform iterators.IteratorTransform,
) (dbm.Iterator, error)
Describe your changes and provide context
Adds the ability to iterate data in flatKV
Testing performed to validate your change
unit tests