SCORU/Node: use indexed file for storage
Context
Replaces the Irmin store for the smart rollup node by a store based on indexed files (excepted for the DAL data for now).
This is the (almost) final MR for the refactoring of the smart rollup node store.
Fixes #4392 (closed), #3471 (closed).
Depends on:
- !7101 (merged)
- !7122 (merged)
- !7132 (merged)
- !7135 (merged)
- !7170 (merged)
- !7171 (merged)
- !6875 (merged)
Dependency graph of staked MRs for this feature is as such:
graph BT
!7251 --> !7170
!7251 --> !6875
!7170 --> !7135
!7135 --> !7132
!7132 --> !7122
!7122 --> !7101
!7251 --> !7171
!7292 --> !7251
!7298 --> !7170
style !7171 fill:#afa
style !7101 fill:#afa
style !7122 fill:#afa
style !7132 fill:#afa
style !7135 fill:#afa
style !7170 fill:#afa
style !7298 fill:#afa
style !6875 fill:#afa
style !7251 fill:#afa
style !7292 fill:#afa
Example in storage reduction
Test run on a rollup with light traffic for 1000 blocks.
Indexed store
40K storage/levels_to_hashes
112K storage/messages
8,0K storage/commitments
432K storage/inboxes
344K storage/l2_blocks
8,0K storage/commitments_published_at_level
16K storage/irmin_store
968K storage
1,3M context
2,2M total
Before this MR
7,3M storage
1,3M context
8,5M total
Before all storage refactoring MRs
264M storage
1,3M context
265M total
Manually testing the MR
Run a rollup node and check the storage size on disk.
Edited by Alain Mebsout