Dataset sizes keep changing

osiala

Cadet
Joined
Jun 1, 2022
Messages
9
Hi,
my dataset sizes keep changing based on how much data there is on other datasets. Why is that happening?
I am using raid-z with 4 4TB HDD's.
Picture one is with temporary data written to show the issue, and picture two is with the data removed.
As you can see, the Y:, X: and W: drives are smaller in capacity when the temporary data is present.
 

Attachments

  • 1.png
    1.png
    6.9 KB · Views: 84
  • 2.png
    2.png
    6.8 KB · Views: 83
Joined
Oct 22, 2019
Messages
3,641
Related:

 

anodos

Sambassador
iXsystems
Joined
Mar 6, 2014
Messages
9,554
TL;DR version is that that Windows Explorer GUI concepts don't work well work ZFS. Configure alerts if you want proper alerting for your dataset usage. available is correct value.
 

osiala

Cadet
Joined
Jun 1, 2022
Messages
9
TL;DR version is that that Windows Explorer GUI concepts don't work well work ZFS. Configure alerts if you want proper alerting for your dataset usage. available is correct value.
Thank you for your reply. I get the same problem when checking in macOS, but I guess that is because it is still SMB? Sorry for asking, I am completely new to TrueNAS.
 

anodos

Sambassador
iXsystems
Joined
Mar 6, 2014
Messages
9,554
Thank you for your reply. I get the same problem when checking in macOS, but I guess that is because it is still SMB? Sorry for asking, I am completely new to TrueNAS.

Right. The way this stuff works is the SMB client makes a SMB2 QUERY_INFO request on the opened SMB file handle for a path with InfoType set to SMB2_0_INFO_FILESYSTEM and FileInfoClass to FileFsFullSizeInformation (MS-SMB2 Section 2.2.37). The return is documented in MS-FSCC Section 2.5.4. It contains two counters basically: "total" and "available". Client utilities present three counters "total", "used", and "available".

Used is calculated by subtracting available from total. Samba wraps around statfs(2) / statvfs(2) and generates total by summing "used" with "available". It's a trade-off with ZFS. You either get the correct amount of used and available for a path (dataset). Or you get the correct "total" and "available", but not used. We went with what is fastest (just doing the syscall).
 

osiala

Cadet
Joined
Jun 1, 2022
Messages
9
Right. The way this stuff works is the SMB client makes a SMB2 QUERY_INFO request on the opened SMB file handle for a path with InfoType set to SMB2_0_INFO_FILESYSTEM and FileInfoClass to FileFsFullSizeInformation (MS-SMB2 Section 2.2.37). The return is documented in MS-FSCC Section 2.5.4. It contains two counters basically: "total" and "available". Client utilities present three counters "total", "used", and "available".

Used is calculated by subtracting available from total. Samba wraps around statfs(2) / statvfs(2) and generates total by summing "used" with "available". It's a trade-off with ZFS. You either get the correct amount of used and available for a path (dataset). Or you get the correct "total" and "available", but not used. We went with what is fastest (just doing the syscall).
Thanks for you detailed response.
 
Top