You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
seaweedfs: volumeSizeLimitMB has no per-instance override while volume.size is unbounded #4248
packages/system/seaweedfs/values.yaml sets master.volumeSizeLimitMB for every tenant instance, and packages/extra/seaweedfs/values.yaml exposes no way to change it. volume.size is per-tenant and has no upper bound, so the two drift apart the moment anyone provisions a large PVC.
Those two numbers are halves of the same thing: a volume server started with -max 0 gets its slot count from free disk divided by the master's limit. A tenant on 10Gi and a tenant on 5Ti get identical volume sizes and wildly different volume counts. At 250MB a 5Ti server carries roughly 21k volumes, each a .dat and an .idx.
Deriving the limit from volume.size is not a straight substitution. Pools and zones each carry their own PVC size while volumeSizeLimitMB is master-wide, so a derived value would have to track the smallest pool. That is the tradeoff to settle, not a reason the knob should not exist.
Tracking the smallest pool is not a reason to skip the knob. It is the correct semantics for a master-wide divisor: one limit has to be safe for every pool, and the smallest pool is what makes it safe.
The tradeoff to weigh is what that costs the largest pool. A 10Ti pool inheriting a limit derived from a 10Gi neighbour carries around 42k volumes, where a limit sized for its own disk would leave it a few hundred. So the choice is between a derivation that is correct and lopsided, and a flat value that is explicit and right for one disk size only.
Activity
lexfrei commentedon Sep 14, 2026
Tracking the smallest pool is not a reason to skip the knob. It is the correct semantics for a master-wide divisor: one limit has to be safe for every pool, and the smallest pool is what makes it safe.
The tradeoff to weigh is what that costs the largest pool. A 10Ti pool inheriting a limit derived from a 10Gi neighbour carries around 42k volumes, where a limit sized for its own disk would leave it a few hundred. So the choice is between a derivation that is correct and lopsided, and a flat value that is explicit and right for one disk size only.
fix(seaweedfs): raise the bucket ceiling by sizing volumes smaller (c…