-
Notifications
You must be signed in to change notification settings - Fork 865
CompositeStateStore Part 6: StateStore legacy db #2792
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: feature/composite-ss-read-path
Are you sure you want to change the base?
CompositeStateStore Part 6: StateStore legacy db #2792
Conversation
|
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 @@
## feature/composite-ss-read-path #2792 +/- ##
===================================================================
+ Coverage 48.32% 56.77% +8.45%
===================================================================
Files 671 2070 +1399
Lines 50580 168610 +118030
===================================================================
+ Hits 24443 95733 +71290
- Misses 23998 64348 +40350
- Partials 2139 8529 +6390
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
b68f249 to
f5d8315
Compare
2d1839f to
24a9eae
Compare
| for version, evmChanges := range evmChangesByVersion { | ||
| if err := s.evmStore.ApplyChangesetParallel(version, evmChanges); err != nil { | ||
| s.logger.Error("failed to flush EVM raw import batch", "version", version, "error", err) | ||
| } | ||
| } |
Check warning
Code scanning / CodeQL
Iteration over map Warning
|
@yzang2019 could you review again? |
| for storeType, pairs := range changes { | ||
| ch, ok := s.asyncChs[storeType] | ||
| if !ok || len(pairs) == 0 { | ||
| continue | ||
| } | ||
| ch <- dbWrite{version: version, pairs: pairs} | ||
| } |
Check warning
Code scanning / CodeQL
Iteration over map Warning
| for st, ch := range s.asyncChs { | ||
| close(ch) | ||
| delete(s.asyncChs, st) | ||
| } |
Check warning
Code scanning / CodeQL
Iteration over map Warning
| ch := make(chan dbWrite, asyncBufferSize) | ||
| store.asyncChs[storeType] = ch | ||
| store.asyncWg.Add(1) | ||
| go store.asyncWorker(db, ch) |
Check notice
Code scanning / CodeQL
Spawning a Go routine Note
03beace to
6c1c6aa
Compare
fd3d4c8 to
12de207
Compare
6c1c6aa to
57a6b04
Compare
Part 6 of CompositeStateStore: adds catch-all LegacyDB so ALL EVM data is routed to EVM-SS. - EVMKeyLegacy: catch-all for EVM keys that don't match optimized types (address mappings, codesize, receipts, pointers, bloom, etc.) - CodeSize routes to Legacy (not its own DB) per reviewer feedback - Rename EVMKeyUnknown → EVMKeyEmpty (only for zero-length keys) - Rename StoreUnknown → StoreEmpty - Malformed keys route to Legacy instead of being dropped - Updated all tests for new routing behavior
57a6b04 to
6ade865
Compare
Describe your changes and provide context
Add a catch-all
LegacyDBto EVM-SS that stores all EVM module keys that don't fit into the optimized databases (Nonce, CodeHash, Code, Storage).This ensures ALL EVM data is routed to EVM-SS:
Testing performed to validate your change