Is your feature request related to a problem? Please describe.
I'm always frustrated when I can't change the depth of the FSTree.
Describe the solution you'd like
Nothing prevents us from adding online reshaping functionality:
- add a secondary depth to FSTree config
- put with the new depth
- try get operations with the new one, fallback to old if not present
- background threads can iterate over storage, add dirs if needed, drop empty if possible,
rename files appropriately (not even looking into contents)
- once threads are done drop the old depth from the config
Describe alternatives you've considered
Offline reshaping is somewhat easier, but doesn't really work for big object collections.
Additional context
I'd really like to change the depth of 5 to 3 for mainnet nodes. But I don't want to lose any data.
Is your feature request related to a problem? Please describe.
I'm always frustrated when I can't change the depth of the FSTree.
Describe the solution you'd like
Nothing prevents us from adding online reshaping functionality:
renamefiles appropriately (not even looking into contents)Describe alternatives you've considered
Offline reshaping is somewhat easier, but doesn't really work for big object collections.
Additional context
I'd really like to change the depth of 5 to 3 for mainnet nodes. But I don't want to lose any data.