-
Notifications
You must be signed in to change notification settings - Fork 50
Open
Labels
I3Minimal impactMinimal impactS4RoutineRoutineU4Nothing urgentNothing urgentfeatureCompletely new functionalityCompletely new functionalityneofs-storageStorage node application issuesStorage node application issues
Description
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,
renamefiles 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.
Metadata
Metadata
Assignees
Labels
I3Minimal impactMinimal impactS4RoutineRoutineU4Nothing urgentNothing urgentfeatureCompletely new functionalityCompletely new functionalityneofs-storageStorage node application issuesStorage node application issues