24.10 RC2 Raidz expansion caused miscalculated available storage

It doesn’t do anything when checking space over SMB, File Explorer, or du, and you’ll also still get invalid “disk usage” of files that report smaller if they were saved prior to the expansion. This can give the wrong impression about compressible files, since they are expected to be smaller to some degree.

A comment which I do not quite understand. (This may have to do with the fact that I am not a genius.)
It seems to me that:

The level of risk is inversely proportionate to your ability to restore the data from backup.

1 Like

You are of course right.

Wow. This topic has been a mind blowing read. For the decade plus that the ZFS zealots have been talking about how it’s the best filesystem in the world, we’re literally in a spot where if you use a supported system feature, it gives you inaccurate information about total available space, and we’re considering this to be “fine.” I mean other than whether or not your storage is accessible, I’d say available space / capacity is literally the most important thing a storage system can tell you…

1 Like

You’re not wrong on the user side, but with CoW and transparent compression “space”, “used”, and “available” have always been complicated matters with ZFS (which is still arguably the most advanced file system, but not necessarily the most suitable for all cases).

I woke up today feeling like everything I ever thought was wrong.

I can’t believe that in an enterprise grade tool like TrueNAS, when you go through VDEV expansion, there’s not a little yellow warning saying, “Hey by the way, yes you can expand your storage, BUT, if you do that, it’s a one-way street, and you’ll never be able to get an accurate view of how full your VDEV is!”

How can this not be like one of the highest freaking priorities? Or… remove the feature. It’s not working right. Disable it until there’s a workaround.

1 Like

It’s a reporting issue, not a functioning issue.
You’re not affected if you do not use raidz expansion… and enterprise users don’t use this: Backup-Destroy-Restore works for them.

1 Like

Well of course they don’t use it if it has detrimental side effects. If it didn’t, why would an enterprise go through backup / destroy / restore, when expansion would work just fine, assuming a backup already in place?

Enterprise users don’t do expansion because it’s not useful to them. That’s not what enterprise does. Even backup-destroy-restore would only happen when they made a mistake planning their storage.

An enterprise that has a raidz2/3 use case would build N vdevs that are X wide each, and just add more vdevs as they go.

Needing to change the width means someone made a mistake during planning.

4 Likes