aristocratos / btop

A monitor of resources
Apache License 2.0
20.95k stars 645 forks source link

[BUG] Graphical display for ZFS io and pool size is incorrect for FreeBSD 12.4 #482

Open russelld58 opened 1 year ago

russelld58 commented 1 year ago

Read the README.md and search for similar issues before posting a bug report! After having years of happy use with bashtop in Linux, I am finding that btop is not showing correct volume sizes or IO for FreeBSD server. Changing the settings via "Options" or in ~/.config/btop/btop.conf to have the units for bit and byte sizes be displayed at "base 10" don't correct how ZFS io and volume size.

Describe the bug Numerical display for ZFS volume size is incorrect Graphical display for ZFS volume size and IO display a "zero" value

To Reproduce Start btop from command line Observe: Incorrect numerical amount for free space available ion base10 bits for zpool no graphical display for IO or pool size for zpools

Expected behavior Graphical display for Zpool sizes and IO would be be visible and consistent with cli command that shows this info. command for Zpool sizes: zpool list command for io: top -m io -o total

Screenshots Screenshot of btop with "zpool list" in separate terminals with green highlighting on numerical and graphical errors for pool sizes and IO gkrellShoot_12-20-22_161407

Screenshot of system details via neofetch and FreeBSD package details. gkrellShoot_12-20-22_135814

Info

Additional context (running btop with --utf8-force --debug flag) contents of ~/.config/btop/btop.log

2022/12/20 (15:49:19) | ===> btop++ v.1.2.9 2022/12/20 (15:49:19) | DEBUG: Starting in DEBUG mode! 2022/12/20 (15:49:19) | INFO: Logger set to DEBUG 2022/12/20 (15:49:19) | WARNING: No UTF-8 locale detected! Forcing start with --utf-force argument. 2022/12/20 (15:49:19) | INFO: Running on /dev/pts/7 2022/12/20 (15:49:19) | DEBUG: 2022/12/20 (15:49:19) | DEBUG: zpool found: tank 2022/12/20 (15:49:19) | DEBUG: zpool found: tank2 2022/12/20 (15:49:19) | DEBUG: zpool found: zroot 2022/12/20 (15:49:19) | DEBUG: 2022/12/20 (15:49:21) | DEBUG: 2022/12/20 (15:49:23) | WARNING: Failed to join _runner thread on exit! 2022/12/20 (15:49:23) | INFO: Quitting! Runtime: 00:00:04

simplepad commented 1 year ago

Do you have ZFS hide datasets option set to false?

russelld58 commented 1 year ago

Hi Simplepad, Yes the "ZFS hide datasets" is false, "Only Physical" set to true, "Use fstab" to false To show more detail, a screenshot is attached of terminal with horizontal split into 2 screens top screen: btop with larger "mem" to show "disks" after removing "cpu" and "net" bottom screen: output of "zpool list" with jail names greyed out. FYI: jails live in tank, tank2 is a backup of tank cheers!

gkrellShoot_12-21-22_110257

simplepad commented 1 year ago

I can't reproduce the disk size issue on FreeBSD 13, neither with btop 1.2.9 nor with the latest git version.

simplepad commented 1 year ago

Also, Zfs hide datasets option doesn't do anything on FreeBSD, it hasn't been implemented there yet.

russelld58 commented 1 year ago

Ahh, well that will do it!
Thanks for the explaination, cheers!

Gnarflord commented 7 months ago

Bump! Did anyone figure this out? My numbers for datasets are all over the place :( In my setup I have a main dataset datengrab which also contains two child datasets datengrab/jan-data and datengrab/till-data. datengrab/till-data also has a storage quota of max. 500GB:

❯ zfs list -r datengrab
NAME                  USED  AVAIL  REFER  MOUNTPOINT
datengrab            1.56T  1.96T  1.18T  /mnt/datengrab
datengrab/jan-data   42.9G  1.96T  27.6G  /home/jan/jan-zfs-dataset
datengrab/till-data   318G   182G   300G  /home/tills/till-zfs-dataset

df also lists the available and used storage correctly:

❯ sudo df -h
Filesystem                              Size  Used Avail Use% Mounted on
[...]
datengrab                               3.2T  1.2T  2.0T  38% /mnt/datengrab
datengrab/jan-data                      2.0T   28G  2.0T   2% /home/jan/jan-zfs-dataset
datengrab/till-data                     483G  301G  182G  63% /home/tills/till-zfs-dataset

But now look at what btop reports:

image

I would expect:

I don't know how btop queries the disk usage under the hood but I hope this can be fixed somehow.