Preallocate fstree directories #1512

Open
opened 2025-12-28 17:35:41 +00:00 by sami · 0 comments
Owner

Originally created by @roman-khimov on GitHub (Sep 23, 2025).

I'm always frustrated when we stat/mkdir during object put.

Describe the solution you'd like

I think we can preallocate to depth 2 right at fstree init (just a bit more than 3K directories). Theoretically depth 3 can be done in background, but maybe it's not worth it, needs to be tested. If we're to perform any background directory creation fstree config can be leveraged to mark tree as completely ready (allowing to avoid directory stat), see https://github.com/nspcc-dev/neofs-node/issues/2174#issuecomment-2939337843.

Describe alternatives you've considered

Things work as is.

Originally created by @roman-khimov on GitHub (Sep 23, 2025). ## Is your feature request related to a problem? Please describe. I'm always frustrated when we stat/mkdir during object put. ## Describe the solution you'd like I think we can preallocate to depth 2 right at fstree init (just a bit more than 3K directories). Theoretically depth 3 can be done in background, but maybe it's not worth it, needs to be tested. If we're to perform any background directory creation fstree config can be leveraged to mark tree as completely ready (allowing to avoid directory stat), see https://github.com/nspcc-dev/neofs-node/issues/2174#issuecomment-2939337843. ## Describe alternatives you've considered Things work as is.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nspcc-dev/neofs-node#1512
No description provided.