-
Notifications
You must be signed in to change notification settings - Fork 5
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
enha: optimize importer offline #1877
Conversation
PR Reviewer Guide 🔍(Review updated until commit b06e158)Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Latest suggestions up to b06e158
Previous suggestionsSuggestions up to commit cd52c91
|
33743c7
to
deb42d7
Compare
deb42d7
to
b06e158
Compare
Persistent review updated to latest commit b06e158 |
b06e158
to
72b8a96
Compare
Final benchmark: |
PR Type
Enhancement, Performance
Description
rocks_batch_writer
module and its implementationChanges walkthrough 📝
2 files
historic_events_processor.rs
Update RocksStorageState initialization
src/bin/historic_events_processor.rs
RocksStorageState::new()
call to include a new booleanparameter
importer-offline.env.local
Update importer-offline configuration
config/importer-offline.env.local
ROCKS_DISABLE_SYNC_WRITE=true
ROCKS_CACHE_SIZE_MULTIPLIER=0.1
8 files
importer_offline.rs
Refactor importer offline for improved parallelism
src/bin/importer_offline.rs
fetching, executing, and saving blocks
inmemory_temporary.rs
Optimize inmemory temporary storage
src/eth/storage/inmemory/inmemory_temporary.rs
do_read_slot
function usingfind_map
permanent_storage.rs
Add batch saving capability to PermanentStorage
src/eth/storage/permanent_storage.rs
save_block_batch
method toPermanentStorage
traitrocks_disable_sync_write
configuration optionmod.rs
Remove rocks_batch_writer module
src/eth/storage/rocks/mod.rs
rocks_batch_writer
modulerocks_batch_writer.rs
Remove rocks_batch_writer implementation
src/eth/storage/rocks/rocks_batch_writer.rs
rocks_permanent.rs
Add batch saving to RocksPermanentStorage
src/eth/storage/rocks/rocks_permanent.rs
RocksPermanentStorage::new()
to includeenable_sync_write
parameter
save_block_batch
methodrocks_state.rs
Implement batch saving and sync write option
src/eth/storage/rocks/rocks_state.rs
enable_sync_write
field toRocksStorageState
save_block_batch
methodsave_block
to useprepare_block_insertion
write_in_batch_for_multiple_cfs
to useenable_sync_write
option
stratus_storage.rs
Add batch saving capability to StratusStorage
src/eth/storage/stratus_storage.rs
save_block_batch
method forStratusStorage
1 files
mod.rs
Reorder storage module imports
src/eth/storage/mod.rs