2016-04-24 17:38:39 |
Hajo Möller |
bug |
|
|
added bug |
2016-04-25 18:05:55 |
Richard Laager |
bug |
|
|
added subscriber Richard Laager |
2016-06-28 07:39:27 |
Launchpad Janitor |
zfs-linux (Ubuntu): status |
New |
Confirmed |
|
2016-07-27 17:34:28 |
Colin Ian King |
zfs-linux (Ubuntu): status |
Confirmed |
In Progress |
|
2016-07-27 17:36:47 |
Colin Ian King |
zfs-linux (Ubuntu): importance |
Undecided |
Medium |
|
2016-07-27 17:36:49 |
Colin Ian King |
zfs-linux (Ubuntu): assignee |
|
Colin Ian King (colin-king) |
|
2016-07-27 18:41:53 |
Eric Desrochers |
zfs-linux (Ubuntu): assignee |
Colin Ian King (colin-king) |
Eric Desrochers (slashd) |
|
2016-07-27 18:57:55 |
Eric Desrochers |
bug |
|
|
added subscriber Eric Desrochers |
2016-07-27 19:04:49 |
JMRice |
bug |
|
|
added subscriber JMRice |
2016-07-27 20:58:49 |
Eric Desrochers |
description |
arcstat.py and arc_summary.py are valuable tools to determine ZFS' ARC usage, it is not obvious why they are not included in zfsutils-linux. As ubuntu-minimal already depends on python3 it should be safe to assume python is available, or am I mistaken here?
arcstat.py gives an iostat-like overview about ARC reads, hit rate, current and target size in regular intervals:
# ./arcstat.py 1
time read miss miss% dmis dm% pmis pm% mmis mm% arcsz c
19:22:33 0 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:34 3 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:35 21 0 0 0 0 0 0 0 0 2.0G 7.8G
^C
arc_summary.py shows a more detailed overview of the current ARC status and ZFS tunables:
# ./arc_summary.py
------------------------------------------------------------------------
ZFS Subsystem Report Sun Apr 24 19:23:25 2016
ARC Summary: (HEALTHY)
Memory Throttle Count: 0
ARC Misc:
Deleted: 46
Mutex Misses: 0
Evict Skips: 0
ARC Size: 25.10% 1.95 GiB
Target Size: (Adaptive) 100.00% 7.78 GiB
Min Size (Hard Limit): 0.40% 32.00 MiB
Max Size (High Water): 248:1 7.78 GiB
ARC Size Breakdown:
Recently Used Cache Size: 50.00% 3.89 GiB
Frequently Used Cache Size: 50.00% 3.89 GiB
ARC Hash Breakdown:
Elements Max: 32.31k
Elements Current: 99.78% 32.24k
Collisions: 40.54k
Chain Max: 3
Chains: 240
ARC Total accesses: 4.54m
Cache Hit Ratio: 99.39% 4.51m
Cache Miss Ratio: 0.61% 27.74k
Actual Hit Ratio: 98.76% 4.48m
Data Demand Efficiency: 99.73% 3.23m
Data Prefetch Efficiency: 11.32% 6.41k
CACHE HITS BY CACHE LIST:
Anonymously Used: 0.64% 28.65k
Most Recently Used: 21.90% 987.29k
Most Frequently Used: 77.47% 3.49m
Most Recently Used Ghost: 0.00% 0
Most Frequently Used Ghost: 0.00% 0
CACHE HITS BY DATA TYPE:
Demand Data: 71.40% 3.22m
Prefetch Data: 0.02% 725
Demand Metadata: 27.97% 1.26m
Prefetch Metadata: 0.62% 27.92k
CACHE MISSES BY DATA TYPE:
Demand Data: 31.81% 8.82k
Prefetch Data: 20.48% 5.68k
Demand Metadata: 21.99% 6.10k
Prefetch Metadata: 25.72% 7.13k
File-Level Prefetch: (HEALTHY)
DMU Efficiency: 36.39m
Hit Ratio: 93.36% 33.97m
Miss Ratio: 6.64% 2.42m
Colinear: 2.42m
Hit Ratio: 0.02% 505
Miss Ratio: 99.98% 2.42m
Stride: 33.94m
Hit Ratio: 100.00% 33.94m
Miss Ratio: 0.00% 14
DMU Misc:
Reclaim: 2.42m
Successes: 2.46% 59.51k
Failures: 97.54% 2.36m
Streams: 35.39k
+Resets: 0.05% 18
-Resets: 99.95% 35.37k
Bogus: 0
ZFS Tunable:
metaslab_debug_load 0
zfs_arc_min_prefetch_lifespan 0
zfetch_max_streams 8
zfs_nopwrite_enabled 1
zfetch_min_sec_reap 2
zfs_dbgmsg_enable 0
zfs_dirty_data_max_max_percent 25
zfs_arc_p_aggressive_disable 1
spa_load_verify_data 1
zfs_zevent_cols 80
zfs_dirty_data_max_percent 10
zfs_sync_pass_dont_compress 5
l2arc_write_max 8388608
zfs_vdev_scrub_max_active 2
zfs_vdev_sync_write_min_active 10
zvol_prefetch_bytes 131072
metaslab_aliquot 524288
zfs_no_scrub_prefetch 0
zfs_arc_shrink_shift 0
zfetch_block_cap 256
zfs_txg_history 0
zfs_delay_scale 500000
zfs_vdev_async_write_active_min_dirty_percent 30
metaslab_debug_unload 0
zfs_read_history 0
zvol_max_discard_blocks 16384
zfs_recover 0
l2arc_headroom 2
zfs_deadman_synctime_ms 1000000
zfs_scan_idle 50
zfs_free_min_time_ms 1000
zfs_dirty_data_max 1670300876
zfs_vdev_async_read_min_active 1
zfs_mg_noalloc_threshold 0
zfs_dedup_prefetch 0
zfs_vdev_max_active 1000
l2arc_write_boost 8388608
zfs_resilver_min_time_ms 3000
zfs_vdev_async_write_max_active 10
zil_slog_limit 1048576
zfs_prefetch_disable 0
zfs_resilver_delay 2
metaslab_lba_weighting_enabled 1
zfs_mg_fragmentation_threshold 85
l2arc_feed_again 1
zfs_zevent_console 0
zfs_immediate_write_sz 32768
zfs_dbgmsg_maxsize 4194304
zfs_free_leak_on_eio 0
zfs_deadman_enabled 1
metaslab_bias_enabled 1
zfs_arc_p_dampener_disable 1
zfs_object_mutex_size 64
zfs_metaslab_fragmentation_threshold 70
zfs_no_scrub_io 0
metaslabs_per_vdev 200
zfs_dbuf_state_index 0
zfs_vdev_sync_read_min_active 10
metaslab_fragmentation_factor_enabled 1
zvol_inhibit_dev 0
zfs_vdev_async_write_active_max_dirty_percent 60
zfs_vdev_cache_size 0
zfs_vdev_mirror_switch_us 10000
zfs_dirty_data_sync 67108864
spa_config_path /etc/zfs/zpool.cache
zfs_dirty_data_max_max 4175752192
zfs_arc_lotsfree_percent 10
zfs_zevent_len_max 128
zfs_scan_min_time_ms 1000
zfs_arc_sys_free 0
zfs_arc_meta_strategy 1
zfs_vdev_cache_bshift 16
zfs_arc_meta_adjust_restarts 4096
zfs_max_recordsize 1048576
zfs_vdev_scrub_min_active 1
zfs_vdev_read_gap_limit 32768
zfs_arc_meta_limit 0
zfs_vdev_sync_write_max_active 10
l2arc_norw 0
zfs_arc_meta_prune 10000
metaslab_preload_enabled 1
l2arc_nocompress 0
zvol_major 230
zfs_vdev_aggregation_limit 131072
zfs_flags 0
spa_asize_inflation 24
zfs_admin_snapshot 0
l2arc_feed_secs 1
zio_taskq_batch_pct 75
zfs_sync_pass_deferred_free 2
zfs_disable_dup_eviction 0
zfs_arc_grow_retry 0
zfs_read_history_hits 0
zfs_vdev_async_write_min_active 1
zfs_vdev_async_read_max_active 3
zfs_scrub_delay 4
zfs_delay_min_dirty_percent 60
zfs_free_max_blocks 100000
zfs_vdev_cache_max 16384
zio_delay_max 30000
zfs_top_maxinflight 32
spa_slop_shift 5
zfs_vdev_write_gap_limit 4096
spa_load_verify_metadata 1
spa_load_verify_maxinflight 10000
l2arc_noprefetch 1
zfs_vdev_scheduler noop
zfs_expire_snapshot 300
zfs_sync_pass_rewrite 2
zil_replay_disable 0
zfs_nocacheflush 0
zfs_arc_max 0
zfs_arc_min 0
zfs_read_chunk_size 1048576
zfs_txg_timeout 5
zfs_pd_bytes_max 52428800
l2arc_headroom_boost 200
zfs_send_corrupt_data 0
l2arc_feed_min_ms 200
zfs_arc_meta_min 0
zfs_arc_average_blocksize 8192
zfetch_array_rd_sz 1048576
zfs_autoimport_disable 1
zfs_arc_p_min_shift 0
zio_requeue_io_start_cut_in_line 1
zfs_vdev_sync_read_max_active 10
zfs_mdcomp_disable 0
zfs_arc_num_sublists_per_state 4
Both tools are well-documented and distributed upstream, see
https://github.com/zfsonlinux/zfs/blob/master/cmd/arcstat/arcstat.py
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary/arc_summary.py |
[Impact]
zfsutils-linux missing some important tools.
Python3 compatible scripts : arc_summary.py, arcstat.py and dbufstat.py found in src_code/cmd/ are not taken into account during compilation.
* arc_summary.py : Provides a summary of the statistics
* arcstat.py : Print out ZFS ARC Statistics exported via kstat(1)
* dbufstat.py : Print out statistics for all cached dmu buffers. # https://github.com/zfsonlinux/zfs/blob/master/cmd/dbufstat/dbufstat.py
[Test Case]
# rmadison zfsutils-linux
...
zfsutils-linux | 0.6.5.6-0ubuntu10 | xenial-updates
...
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.6-0ubuntu10_amd64.deb | egrep "arcstat|arc_summary|dbufstat"
# You will notice there are not present.
[Regression Potential]
None expected, debian package[1] has already made the change to build the python scripts.
[1]
Package: zfsutils-linux
Source: zfs-linux
Version: 0.6.5.7-1
Architecture: amd64
Maintainer: Debian ZFS on Linux maintainers <pkg-zfsonlinux-devel@lists.alioth.debian.org>
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.7-1_amd64.deb | egrep -i "arc|dbufstat"
-rwxr-xr-x root/root 40751 2016-05-31 03:40 ./bin/arc_summary.py
-rwxr-xr-x root/root 13057 2016-05-31 03:40 ./bin/arcstat.py
-rwxr-xr-x root/root 18718 2016-05-31 03:40 ./bin/dbufstat.py
[Other Info]
This is based on the following Debian commits :
Debian git commits
===
commit 730989397063955d60a1845003cfb7433eba1e52
Author: Aron Xu <aron@debian.org>
Date: Tue Apr 26 17:01:29 2016 +0800
Add dh-python to b-d
--
commit 814413118fb88de3ce596a87a8a011f50c225fdd
Author: Aron Xu <aron@debian.org>
Date: Sun Nov 22 15:44:16 2015 +0800
Add python related dependencies
===
[Original Description]
arcstat.py and arc_summary.py are valuable tools to determine ZFS' ARC usage, it is not obvious why they are not included in zfsutils-linux. As ubuntu-minimal already depends on python3 it should be safe to assume python is available, or am I mistaken here?
arcstat.py gives an iostat-like overview about ARC reads, hit rate, current and target size in regular intervals:
# ./arcstat.py 1
time read miss miss% dmis dm% pmis pm% mmis mm% arcsz c
19:22:33 0 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:34 3 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:35 21 0 0 0 0 0 0 0 0 2.0G 7.8G
^C
arc_summary.py shows a more detailed overview of the current ARC status and ZFS tunables:
# ./arc_summary.py
------------------------------------------------------------------------
ZFS Subsystem Report Sun Apr 24 19:23:25 2016
ARC Summary: (HEALTHY)
Memory Throttle Count: 0
ARC Misc:
Deleted: 46
Mutex Misses: 0
Evict Skips: 0
ARC Size: 25.10% 1.95 GiB
Target Size: (Adaptive) 100.00% 7.78 GiB
Min Size (Hard Limit): 0.40% 32.00 MiB
Max Size (High Water): 248:1 7.78 GiB
ARC Size Breakdown:
Recently Used Cache Size: 50.00% 3.89 GiB
Frequently Used Cache Size: 50.00% 3.89 GiB
ARC Hash Breakdown:
Elements Max: 32.31k
Elements Current: 99.78% 32.24k
Collisions: 40.54k
Chain Max: 3
Chains: 240
ARC Total accesses: 4.54m
Cache Hit Ratio: 99.39% 4.51m
Cache Miss Ratio: 0.61% 27.74k
Actual Hit Ratio: 98.76% 4.48m
Data Demand Efficiency: 99.73% 3.23m
Data Prefetch Efficiency: 11.32% 6.41k
CACHE HITS BY CACHE LIST:
Anonymously Used: 0.64% 28.65k
Most Recently Used: 21.90% 987.29k
Most Frequently Used: 77.47% 3.49m
Most Recently Used Ghost: 0.00% 0
Most Frequently Used Ghost: 0.00% 0
CACHE HITS BY DATA TYPE:
Demand Data: 71.40% 3.22m
Prefetch Data: 0.02% 725
Demand Metadata: 27.97% 1.26m
Prefetch Metadata: 0.62% 27.92k
CACHE MISSES BY DATA TYPE:
Demand Data: 31.81% 8.82k
Prefetch Data: 20.48% 5.68k
Demand Metadata: 21.99% 6.10k
Prefetch Metadata: 25.72% 7.13k
File-Level Prefetch: (HEALTHY)
DMU Efficiency: 36.39m
Hit Ratio: 93.36% 33.97m
Miss Ratio: 6.64% 2.42m
Colinear: 2.42m
Hit Ratio: 0.02% 505
Miss Ratio: 99.98% 2.42m
Stride: 33.94m
Hit Ratio: 100.00% 33.94m
Miss Ratio: 0.00% 14
DMU Misc:
Reclaim: 2.42m
Successes: 2.46% 59.51k
Failures: 97.54% 2.36m
Streams: 35.39k
+Resets: 0.05% 18
-Resets: 99.95% 35.37k
Bogus: 0
ZFS Tunable:
metaslab_debug_load 0
zfs_arc_min_prefetch_lifespan 0
zfetch_max_streams 8
zfs_nopwrite_enabled 1
zfetch_min_sec_reap 2
zfs_dbgmsg_enable 0
zfs_dirty_data_max_max_percent 25
zfs_arc_p_aggressive_disable 1
spa_load_verify_data 1
zfs_zevent_cols 80
zfs_dirty_data_max_percent 10
zfs_sync_pass_dont_compress 5
l2arc_write_max 8388608
zfs_vdev_scrub_max_active 2
zfs_vdev_sync_write_min_active 10
zvol_prefetch_bytes 131072
metaslab_aliquot 524288
zfs_no_scrub_prefetch 0
zfs_arc_shrink_shift 0
zfetch_block_cap 256
zfs_txg_history 0
zfs_delay_scale 500000
zfs_vdev_async_write_active_min_dirty_percent 30
metaslab_debug_unload 0
zfs_read_history 0
zvol_max_discard_blocks 16384
zfs_recover 0
l2arc_headroom 2
zfs_deadman_synctime_ms 1000000
zfs_scan_idle 50
zfs_free_min_time_ms 1000
zfs_dirty_data_max 1670300876
zfs_vdev_async_read_min_active 1
zfs_mg_noalloc_threshold 0
zfs_dedup_prefetch 0
zfs_vdev_max_active 1000
l2arc_write_boost 8388608
zfs_resilver_min_time_ms 3000
zfs_vdev_async_write_max_active 10
zil_slog_limit 1048576
zfs_prefetch_disable 0
zfs_resilver_delay 2
metaslab_lba_weighting_enabled 1
zfs_mg_fragmentation_threshold 85
l2arc_feed_again 1
zfs_zevent_console 0
zfs_immediate_write_sz 32768
zfs_dbgmsg_maxsize 4194304
zfs_free_leak_on_eio 0
zfs_deadman_enabled 1
metaslab_bias_enabled 1
zfs_arc_p_dampener_disable 1
zfs_object_mutex_size 64
zfs_metaslab_fragmentation_threshold 70
zfs_no_scrub_io 0
metaslabs_per_vdev 200
zfs_dbuf_state_index 0
zfs_vdev_sync_read_min_active 10
metaslab_fragmentation_factor_enabled 1
zvol_inhibit_dev 0
zfs_vdev_async_write_active_max_dirty_percent 60
zfs_vdev_cache_size 0
zfs_vdev_mirror_switch_us 10000
zfs_dirty_data_sync 67108864
spa_config_path /etc/zfs/zpool.cache
zfs_dirty_data_max_max 4175752192
zfs_arc_lotsfree_percent 10
zfs_zevent_len_max 128
zfs_scan_min_time_ms 1000
zfs_arc_sys_free 0
zfs_arc_meta_strategy 1
zfs_vdev_cache_bshift 16
zfs_arc_meta_adjust_restarts 4096
zfs_max_recordsize 1048576
zfs_vdev_scrub_min_active 1
zfs_vdev_read_gap_limit 32768
zfs_arc_meta_limit 0
zfs_vdev_sync_write_max_active 10
l2arc_norw 0
zfs_arc_meta_prune 10000
metaslab_preload_enabled 1
l2arc_nocompress 0
zvol_major 230
zfs_vdev_aggregation_limit 131072
zfs_flags 0
spa_asize_inflation 24
zfs_admin_snapshot 0
l2arc_feed_secs 1
zio_taskq_batch_pct 75
zfs_sync_pass_deferred_free 2
zfs_disable_dup_eviction 0
zfs_arc_grow_retry 0
zfs_read_history_hits 0
zfs_vdev_async_write_min_active 1
zfs_vdev_async_read_max_active 3
zfs_scrub_delay 4
zfs_delay_min_dirty_percent 60
zfs_free_max_blocks 100000
zfs_vdev_cache_max 16384
zio_delay_max 30000
zfs_top_maxinflight 32
spa_slop_shift 5
zfs_vdev_write_gap_limit 4096
spa_load_verify_metadata 1
spa_load_verify_maxinflight 10000
l2arc_noprefetch 1
zfs_vdev_scheduler noop
zfs_expire_snapshot 300
zfs_sync_pass_rewrite 2
zil_replay_disable 0
zfs_nocacheflush 0
zfs_arc_max 0
zfs_arc_min 0
zfs_read_chunk_size 1048576
zfs_txg_timeout 5
zfs_pd_bytes_max 52428800
l2arc_headroom_boost 200
zfs_send_corrupt_data 0
l2arc_feed_min_ms 200
zfs_arc_meta_min 0
zfs_arc_average_blocksize 8192
zfetch_array_rd_sz 1048576
zfs_autoimport_disable 1
zfs_arc_p_min_shift 0
zio_requeue_io_start_cut_in_line 1
zfs_vdev_sync_read_max_active 10
zfs_mdcomp_disable 0
zfs_arc_num_sublists_per_state 4
Both tools are well-documented and distributed upstream, see
https://github.com/zfsonlinux/zfs/blob/master/cmd/arcstat/arcstat.py
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary/arc_summary.py |
|
2016-07-27 20:59:50 |
Eric Desrochers |
description |
[Impact]
zfsutils-linux missing some important tools.
Python3 compatible scripts : arc_summary.py, arcstat.py and dbufstat.py found in src_code/cmd/ are not taken into account during compilation.
* arc_summary.py : Provides a summary of the statistics
* arcstat.py : Print out ZFS ARC Statistics exported via kstat(1)
* dbufstat.py : Print out statistics for all cached dmu buffers. # https://github.com/zfsonlinux/zfs/blob/master/cmd/dbufstat/dbufstat.py
[Test Case]
# rmadison zfsutils-linux
...
zfsutils-linux | 0.6.5.6-0ubuntu10 | xenial-updates
...
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.6-0ubuntu10_amd64.deb | egrep "arcstat|arc_summary|dbufstat"
# You will notice there are not present.
[Regression Potential]
None expected, debian package[1] has already made the change to build the python scripts.
[1]
Package: zfsutils-linux
Source: zfs-linux
Version: 0.6.5.7-1
Architecture: amd64
Maintainer: Debian ZFS on Linux maintainers <pkg-zfsonlinux-devel@lists.alioth.debian.org>
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.7-1_amd64.deb | egrep -i "arc|dbufstat"
-rwxr-xr-x root/root 40751 2016-05-31 03:40 ./bin/arc_summary.py
-rwxr-xr-x root/root 13057 2016-05-31 03:40 ./bin/arcstat.py
-rwxr-xr-x root/root 18718 2016-05-31 03:40 ./bin/dbufstat.py
[Other Info]
This is based on the following Debian commits :
Debian git commits
===
commit 730989397063955d60a1845003cfb7433eba1e52
Author: Aron Xu <aron@debian.org>
Date: Tue Apr 26 17:01:29 2016 +0800
Add dh-python to b-d
--
commit 814413118fb88de3ce596a87a8a011f50c225fdd
Author: Aron Xu <aron@debian.org>
Date: Sun Nov 22 15:44:16 2015 +0800
Add python related dependencies
===
[Original Description]
arcstat.py and arc_summary.py are valuable tools to determine ZFS' ARC usage, it is not obvious why they are not included in zfsutils-linux. As ubuntu-minimal already depends on python3 it should be safe to assume python is available, or am I mistaken here?
arcstat.py gives an iostat-like overview about ARC reads, hit rate, current and target size in regular intervals:
# ./arcstat.py 1
time read miss miss% dmis dm% pmis pm% mmis mm% arcsz c
19:22:33 0 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:34 3 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:35 21 0 0 0 0 0 0 0 0 2.0G 7.8G
^C
arc_summary.py shows a more detailed overview of the current ARC status and ZFS tunables:
# ./arc_summary.py
------------------------------------------------------------------------
ZFS Subsystem Report Sun Apr 24 19:23:25 2016
ARC Summary: (HEALTHY)
Memory Throttle Count: 0
ARC Misc:
Deleted: 46
Mutex Misses: 0
Evict Skips: 0
ARC Size: 25.10% 1.95 GiB
Target Size: (Adaptive) 100.00% 7.78 GiB
Min Size (Hard Limit): 0.40% 32.00 MiB
Max Size (High Water): 248:1 7.78 GiB
ARC Size Breakdown:
Recently Used Cache Size: 50.00% 3.89 GiB
Frequently Used Cache Size: 50.00% 3.89 GiB
ARC Hash Breakdown:
Elements Max: 32.31k
Elements Current: 99.78% 32.24k
Collisions: 40.54k
Chain Max: 3
Chains: 240
ARC Total accesses: 4.54m
Cache Hit Ratio: 99.39% 4.51m
Cache Miss Ratio: 0.61% 27.74k
Actual Hit Ratio: 98.76% 4.48m
Data Demand Efficiency: 99.73% 3.23m
Data Prefetch Efficiency: 11.32% 6.41k
CACHE HITS BY CACHE LIST:
Anonymously Used: 0.64% 28.65k
Most Recently Used: 21.90% 987.29k
Most Frequently Used: 77.47% 3.49m
Most Recently Used Ghost: 0.00% 0
Most Frequently Used Ghost: 0.00% 0
CACHE HITS BY DATA TYPE:
Demand Data: 71.40% 3.22m
Prefetch Data: 0.02% 725
Demand Metadata: 27.97% 1.26m
Prefetch Metadata: 0.62% 27.92k
CACHE MISSES BY DATA TYPE:
Demand Data: 31.81% 8.82k
Prefetch Data: 20.48% 5.68k
Demand Metadata: 21.99% 6.10k
Prefetch Metadata: 25.72% 7.13k
File-Level Prefetch: (HEALTHY)
DMU Efficiency: 36.39m
Hit Ratio: 93.36% 33.97m
Miss Ratio: 6.64% 2.42m
Colinear: 2.42m
Hit Ratio: 0.02% 505
Miss Ratio: 99.98% 2.42m
Stride: 33.94m
Hit Ratio: 100.00% 33.94m
Miss Ratio: 0.00% 14
DMU Misc:
Reclaim: 2.42m
Successes: 2.46% 59.51k
Failures: 97.54% 2.36m
Streams: 35.39k
+Resets: 0.05% 18
-Resets: 99.95% 35.37k
Bogus: 0
ZFS Tunable:
metaslab_debug_load 0
zfs_arc_min_prefetch_lifespan 0
zfetch_max_streams 8
zfs_nopwrite_enabled 1
zfetch_min_sec_reap 2
zfs_dbgmsg_enable 0
zfs_dirty_data_max_max_percent 25
zfs_arc_p_aggressive_disable 1
spa_load_verify_data 1
zfs_zevent_cols 80
zfs_dirty_data_max_percent 10
zfs_sync_pass_dont_compress 5
l2arc_write_max 8388608
zfs_vdev_scrub_max_active 2
zfs_vdev_sync_write_min_active 10
zvol_prefetch_bytes 131072
metaslab_aliquot 524288
zfs_no_scrub_prefetch 0
zfs_arc_shrink_shift 0
zfetch_block_cap 256
zfs_txg_history 0
zfs_delay_scale 500000
zfs_vdev_async_write_active_min_dirty_percent 30
metaslab_debug_unload 0
zfs_read_history 0
zvol_max_discard_blocks 16384
zfs_recover 0
l2arc_headroom 2
zfs_deadman_synctime_ms 1000000
zfs_scan_idle 50
zfs_free_min_time_ms 1000
zfs_dirty_data_max 1670300876
zfs_vdev_async_read_min_active 1
zfs_mg_noalloc_threshold 0
zfs_dedup_prefetch 0
zfs_vdev_max_active 1000
l2arc_write_boost 8388608
zfs_resilver_min_time_ms 3000
zfs_vdev_async_write_max_active 10
zil_slog_limit 1048576
zfs_prefetch_disable 0
zfs_resilver_delay 2
metaslab_lba_weighting_enabled 1
zfs_mg_fragmentation_threshold 85
l2arc_feed_again 1
zfs_zevent_console 0
zfs_immediate_write_sz 32768
zfs_dbgmsg_maxsize 4194304
zfs_free_leak_on_eio 0
zfs_deadman_enabled 1
metaslab_bias_enabled 1
zfs_arc_p_dampener_disable 1
zfs_object_mutex_size 64
zfs_metaslab_fragmentation_threshold 70
zfs_no_scrub_io 0
metaslabs_per_vdev 200
zfs_dbuf_state_index 0
zfs_vdev_sync_read_min_active 10
metaslab_fragmentation_factor_enabled 1
zvol_inhibit_dev 0
zfs_vdev_async_write_active_max_dirty_percent 60
zfs_vdev_cache_size 0
zfs_vdev_mirror_switch_us 10000
zfs_dirty_data_sync 67108864
spa_config_path /etc/zfs/zpool.cache
zfs_dirty_data_max_max 4175752192
zfs_arc_lotsfree_percent 10
zfs_zevent_len_max 128
zfs_scan_min_time_ms 1000
zfs_arc_sys_free 0
zfs_arc_meta_strategy 1
zfs_vdev_cache_bshift 16
zfs_arc_meta_adjust_restarts 4096
zfs_max_recordsize 1048576
zfs_vdev_scrub_min_active 1
zfs_vdev_read_gap_limit 32768
zfs_arc_meta_limit 0
zfs_vdev_sync_write_max_active 10
l2arc_norw 0
zfs_arc_meta_prune 10000
metaslab_preload_enabled 1
l2arc_nocompress 0
zvol_major 230
zfs_vdev_aggregation_limit 131072
zfs_flags 0
spa_asize_inflation 24
zfs_admin_snapshot 0
l2arc_feed_secs 1
zio_taskq_batch_pct 75
zfs_sync_pass_deferred_free 2
zfs_disable_dup_eviction 0
zfs_arc_grow_retry 0
zfs_read_history_hits 0
zfs_vdev_async_write_min_active 1
zfs_vdev_async_read_max_active 3
zfs_scrub_delay 4
zfs_delay_min_dirty_percent 60
zfs_free_max_blocks 100000
zfs_vdev_cache_max 16384
zio_delay_max 30000
zfs_top_maxinflight 32
spa_slop_shift 5
zfs_vdev_write_gap_limit 4096
spa_load_verify_metadata 1
spa_load_verify_maxinflight 10000
l2arc_noprefetch 1
zfs_vdev_scheduler noop
zfs_expire_snapshot 300
zfs_sync_pass_rewrite 2
zil_replay_disable 0
zfs_nocacheflush 0
zfs_arc_max 0
zfs_arc_min 0
zfs_read_chunk_size 1048576
zfs_txg_timeout 5
zfs_pd_bytes_max 52428800
l2arc_headroom_boost 200
zfs_send_corrupt_data 0
l2arc_feed_min_ms 200
zfs_arc_meta_min 0
zfs_arc_average_blocksize 8192
zfetch_array_rd_sz 1048576
zfs_autoimport_disable 1
zfs_arc_p_min_shift 0
zio_requeue_io_start_cut_in_line 1
zfs_vdev_sync_read_max_active 10
zfs_mdcomp_disable 0
zfs_arc_num_sublists_per_state 4
Both tools are well-documented and distributed upstream, see
https://github.com/zfsonlinux/zfs/blob/master/cmd/arcstat/arcstat.py
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary/arc_summary.py |
[Impact]
zfsutils-linux missing some important tools.
Python3 compatible scripts : arc_summary.py, arcstat.py and dbufstat.py found in src_code/cmd/ are not taken into account during compilation.
* arc_summary.py : Provides a summary of the statistics
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary
* arcstat.py : Print out ZFS ARC Statistics exported via kstat(1)
https://github.com/zfsonlinux/zfs/tree/master/cmd/arcstat
* dbufstat.py : Print out statistics for all cached dmu buffers. # https://github.com/zfsonlinux/zfs/blob/master/cmd/dbufstat
[Test Case]
# rmadison zfsutils-linux
...
zfsutils-linux | 0.6.5.6-0ubuntu10 | xenial-updates
...
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.6-0ubuntu10_amd64.deb | egrep "arcstat|arc_summary|dbufstat"
# You will notice there are not present.
[Regression Potential]
None expected, debian package[1] has already made the change to build the python scripts.
[1]
Package: zfsutils-linux
Source: zfs-linux
Version: 0.6.5.7-1
Architecture: amd64
Maintainer: Debian ZFS on Linux maintainers <pkg-zfsonlinux-devel@lists.alioth.debian.org>
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.7-1_amd64.deb | egrep -i "arc|dbufstat"
-rwxr-xr-x root/root 40751 2016-05-31 03:40 ./bin/arc_summary.py
-rwxr-xr-x root/root 13057 2016-05-31 03:40 ./bin/arcstat.py
-rwxr-xr-x root/root 18718 2016-05-31 03:40 ./bin/dbufstat.py
[Other Info]
This is based on the following Debian commits :
Debian git commits
===
commit 730989397063955d60a1845003cfb7433eba1e52
Author: Aron Xu <aron@debian.org>
Date: Tue Apr 26 17:01:29 2016 +0800
Add dh-python to b-d
--
commit 814413118fb88de3ce596a87a8a011f50c225fdd
Author: Aron Xu <aron@debian.org>
Date: Sun Nov 22 15:44:16 2015 +0800
Add python related dependencies
===
[Original Description]
arcstat.py and arc_summary.py are valuable tools to determine ZFS' ARC usage, it is not obvious why they are not included in zfsutils-linux. As ubuntu-minimal already depends on python3 it should be safe to assume python is available, or am I mistaken here?
arcstat.py gives an iostat-like overview about ARC reads, hit rate, current and target size in regular intervals:
# ./arcstat.py 1
time read miss miss% dmis dm% pmis pm% mmis mm% arcsz c
19:22:33 0 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:34 3 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:35 21 0 0 0 0 0 0 0 0 2.0G 7.8G
^C
arc_summary.py shows a more detailed overview of the current ARC status and ZFS tunables:
# ./arc_summary.py
------------------------------------------------------------------------
ZFS Subsystem Report Sun Apr 24 19:23:25 2016
ARC Summary: (HEALTHY)
Memory Throttle Count: 0
ARC Misc:
Deleted: 46
Mutex Misses: 0
Evict Skips: 0
ARC Size: 25.10% 1.95 GiB
Target Size: (Adaptive) 100.00% 7.78 GiB
Min Size (Hard Limit): 0.40% 32.00 MiB
Max Size (High Water): 248:1 7.78 GiB
ARC Size Breakdown:
Recently Used Cache Size: 50.00% 3.89 GiB
Frequently Used Cache Size: 50.00% 3.89 GiB
ARC Hash Breakdown:
Elements Max: 32.31k
Elements Current: 99.78% 32.24k
Collisions: 40.54k
Chain Max: 3
Chains: 240
ARC Total accesses: 4.54m
Cache Hit Ratio: 99.39% 4.51m
Cache Miss Ratio: 0.61% 27.74k
Actual Hit Ratio: 98.76% 4.48m
Data Demand Efficiency: 99.73% 3.23m
Data Prefetch Efficiency: 11.32% 6.41k
CACHE HITS BY CACHE LIST:
Anonymously Used: 0.64% 28.65k
Most Recently Used: 21.90% 987.29k
Most Frequently Used: 77.47% 3.49m
Most Recently Used Ghost: 0.00% 0
Most Frequently Used Ghost: 0.00% 0
CACHE HITS BY DATA TYPE:
Demand Data: 71.40% 3.22m
Prefetch Data: 0.02% 725
Demand Metadata: 27.97% 1.26m
Prefetch Metadata: 0.62% 27.92k
CACHE MISSES BY DATA TYPE:
Demand Data: 31.81% 8.82k
Prefetch Data: 20.48% 5.68k
Demand Metadata: 21.99% 6.10k
Prefetch Metadata: 25.72% 7.13k
File-Level Prefetch: (HEALTHY)
DMU Efficiency: 36.39m
Hit Ratio: 93.36% 33.97m
Miss Ratio: 6.64% 2.42m
Colinear: 2.42m
Hit Ratio: 0.02% 505
Miss Ratio: 99.98% 2.42m
Stride: 33.94m
Hit Ratio: 100.00% 33.94m
Miss Ratio: 0.00% 14
DMU Misc:
Reclaim: 2.42m
Successes: 2.46% 59.51k
Failures: 97.54% 2.36m
Streams: 35.39k
+Resets: 0.05% 18
-Resets: 99.95% 35.37k
Bogus: 0
ZFS Tunable:
metaslab_debug_load 0
zfs_arc_min_prefetch_lifespan 0
zfetch_max_streams 8
zfs_nopwrite_enabled 1
zfetch_min_sec_reap 2
zfs_dbgmsg_enable 0
zfs_dirty_data_max_max_percent 25
zfs_arc_p_aggressive_disable 1
spa_load_verify_data 1
zfs_zevent_cols 80
zfs_dirty_data_max_percent 10
zfs_sync_pass_dont_compress 5
l2arc_write_max 8388608
zfs_vdev_scrub_max_active 2
zfs_vdev_sync_write_min_active 10
zvol_prefetch_bytes 131072
metaslab_aliquot 524288
zfs_no_scrub_prefetch 0
zfs_arc_shrink_shift 0
zfetch_block_cap 256
zfs_txg_history 0
zfs_delay_scale 500000
zfs_vdev_async_write_active_min_dirty_percent 30
metaslab_debug_unload 0
zfs_read_history 0
zvol_max_discard_blocks 16384
zfs_recover 0
l2arc_headroom 2
zfs_deadman_synctime_ms 1000000
zfs_scan_idle 50
zfs_free_min_time_ms 1000
zfs_dirty_data_max 1670300876
zfs_vdev_async_read_min_active 1
zfs_mg_noalloc_threshold 0
zfs_dedup_prefetch 0
zfs_vdev_max_active 1000
l2arc_write_boost 8388608
zfs_resilver_min_time_ms 3000
zfs_vdev_async_write_max_active 10
zil_slog_limit 1048576
zfs_prefetch_disable 0
zfs_resilver_delay 2
metaslab_lba_weighting_enabled 1
zfs_mg_fragmentation_threshold 85
l2arc_feed_again 1
zfs_zevent_console 0
zfs_immediate_write_sz 32768
zfs_dbgmsg_maxsize 4194304
zfs_free_leak_on_eio 0
zfs_deadman_enabled 1
metaslab_bias_enabled 1
zfs_arc_p_dampener_disable 1
zfs_object_mutex_size 64
zfs_metaslab_fragmentation_threshold 70
zfs_no_scrub_io 0
metaslabs_per_vdev 200
zfs_dbuf_state_index 0
zfs_vdev_sync_read_min_active 10
metaslab_fragmentation_factor_enabled 1
zvol_inhibit_dev 0
zfs_vdev_async_write_active_max_dirty_percent 60
zfs_vdev_cache_size 0
zfs_vdev_mirror_switch_us 10000
zfs_dirty_data_sync 67108864
spa_config_path /etc/zfs/zpool.cache
zfs_dirty_data_max_max 4175752192
zfs_arc_lotsfree_percent 10
zfs_zevent_len_max 128
zfs_scan_min_time_ms 1000
zfs_arc_sys_free 0
zfs_arc_meta_strategy 1
zfs_vdev_cache_bshift 16
zfs_arc_meta_adjust_restarts 4096
zfs_max_recordsize 1048576
zfs_vdev_scrub_min_active 1
zfs_vdev_read_gap_limit 32768
zfs_arc_meta_limit 0
zfs_vdev_sync_write_max_active 10
l2arc_norw 0
zfs_arc_meta_prune 10000
metaslab_preload_enabled 1
l2arc_nocompress 0
zvol_major 230
zfs_vdev_aggregation_limit 131072
zfs_flags 0
spa_asize_inflation 24
zfs_admin_snapshot 0
l2arc_feed_secs 1
zio_taskq_batch_pct 75
zfs_sync_pass_deferred_free 2
zfs_disable_dup_eviction 0
zfs_arc_grow_retry 0
zfs_read_history_hits 0
zfs_vdev_async_write_min_active 1
zfs_vdev_async_read_max_active 3
zfs_scrub_delay 4
zfs_delay_min_dirty_percent 60
zfs_free_max_blocks 100000
zfs_vdev_cache_max 16384
zio_delay_max 30000
zfs_top_maxinflight 32
spa_slop_shift 5
zfs_vdev_write_gap_limit 4096
spa_load_verify_metadata 1
spa_load_verify_maxinflight 10000
l2arc_noprefetch 1
zfs_vdev_scheduler noop
zfs_expire_snapshot 300
zfs_sync_pass_rewrite 2
zil_replay_disable 0
zfs_nocacheflush 0
zfs_arc_max 0
zfs_arc_min 0
zfs_read_chunk_size 1048576
zfs_txg_timeout 5
zfs_pd_bytes_max 52428800
l2arc_headroom_boost 200
zfs_send_corrupt_data 0
l2arc_feed_min_ms 200
zfs_arc_meta_min 0
zfs_arc_average_blocksize 8192
zfetch_array_rd_sz 1048576
zfs_autoimport_disable 1
zfs_arc_p_min_shift 0
zio_requeue_io_start_cut_in_line 1
zfs_vdev_sync_read_max_active 10
zfs_mdcomp_disable 0
zfs_arc_num_sublists_per_state 4
Both tools are well-documented and distributed upstream, see
https://github.com/zfsonlinux/zfs/blob/master/cmd/arcstat/arcstat.py
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary/arc_summary.py |
|
2016-07-27 21:24:19 |
Andy Whitcroft |
nominated for series |
|
Ubuntu Yakkety |
|
2016-07-27 21:24:19 |
Andy Whitcroft |
bug task added |
|
zfs-linux (Ubuntu Yakkety) |
|
2016-07-27 21:24:19 |
Andy Whitcroft |
nominated for series |
|
Ubuntu Xenial |
|
2016-07-27 21:24:19 |
Andy Whitcroft |
bug task added |
|
zfs-linux (Ubuntu Xenial) |
|
2016-07-27 21:42:21 |
Eric Desrochers |
zfs-linux (Ubuntu Xenial): status |
New |
In Progress |
|
2016-07-27 21:42:23 |
Eric Desrochers |
zfs-linux (Ubuntu Xenial): importance |
Undecided |
Medium |
|
2016-07-27 21:42:25 |
Eric Desrochers |
zfs-linux (Ubuntu Xenial): assignee |
|
Eric Desrochers (slashd) |
|
2016-07-28 00:31:57 |
Eric Desrochers |
description |
[Impact]
zfsutils-linux missing some important tools.
Python3 compatible scripts : arc_summary.py, arcstat.py and dbufstat.py found in src_code/cmd/ are not taken into account during compilation.
* arc_summary.py : Provides a summary of the statistics
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary
* arcstat.py : Print out ZFS ARC Statistics exported via kstat(1)
https://github.com/zfsonlinux/zfs/tree/master/cmd/arcstat
* dbufstat.py : Print out statistics for all cached dmu buffers. # https://github.com/zfsonlinux/zfs/blob/master/cmd/dbufstat
[Test Case]
# rmadison zfsutils-linux
...
zfsutils-linux | 0.6.5.6-0ubuntu10 | xenial-updates
...
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.6-0ubuntu10_amd64.deb | egrep "arcstat|arc_summary|dbufstat"
# You will notice there are not present.
[Regression Potential]
None expected, debian package[1] has already made the change to build the python scripts.
[1]
Package: zfsutils-linux
Source: zfs-linux
Version: 0.6.5.7-1
Architecture: amd64
Maintainer: Debian ZFS on Linux maintainers <pkg-zfsonlinux-devel@lists.alioth.debian.org>
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.7-1_amd64.deb | egrep -i "arc|dbufstat"
-rwxr-xr-x root/root 40751 2016-05-31 03:40 ./bin/arc_summary.py
-rwxr-xr-x root/root 13057 2016-05-31 03:40 ./bin/arcstat.py
-rwxr-xr-x root/root 18718 2016-05-31 03:40 ./bin/dbufstat.py
[Other Info]
This is based on the following Debian commits :
Debian git commits
===
commit 730989397063955d60a1845003cfb7433eba1e52
Author: Aron Xu <aron@debian.org>
Date: Tue Apr 26 17:01:29 2016 +0800
Add dh-python to b-d
--
commit 814413118fb88de3ce596a87a8a011f50c225fdd
Author: Aron Xu <aron@debian.org>
Date: Sun Nov 22 15:44:16 2015 +0800
Add python related dependencies
===
[Original Description]
arcstat.py and arc_summary.py are valuable tools to determine ZFS' ARC usage, it is not obvious why they are not included in zfsutils-linux. As ubuntu-minimal already depends on python3 it should be safe to assume python is available, or am I mistaken here?
arcstat.py gives an iostat-like overview about ARC reads, hit rate, current and target size in regular intervals:
# ./arcstat.py 1
time read miss miss% dmis dm% pmis pm% mmis mm% arcsz c
19:22:33 0 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:34 3 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:35 21 0 0 0 0 0 0 0 0 2.0G 7.8G
^C
arc_summary.py shows a more detailed overview of the current ARC status and ZFS tunables:
# ./arc_summary.py
------------------------------------------------------------------------
ZFS Subsystem Report Sun Apr 24 19:23:25 2016
ARC Summary: (HEALTHY)
Memory Throttle Count: 0
ARC Misc:
Deleted: 46
Mutex Misses: 0
Evict Skips: 0
ARC Size: 25.10% 1.95 GiB
Target Size: (Adaptive) 100.00% 7.78 GiB
Min Size (Hard Limit): 0.40% 32.00 MiB
Max Size (High Water): 248:1 7.78 GiB
ARC Size Breakdown:
Recently Used Cache Size: 50.00% 3.89 GiB
Frequently Used Cache Size: 50.00% 3.89 GiB
ARC Hash Breakdown:
Elements Max: 32.31k
Elements Current: 99.78% 32.24k
Collisions: 40.54k
Chain Max: 3
Chains: 240
ARC Total accesses: 4.54m
Cache Hit Ratio: 99.39% 4.51m
Cache Miss Ratio: 0.61% 27.74k
Actual Hit Ratio: 98.76% 4.48m
Data Demand Efficiency: 99.73% 3.23m
Data Prefetch Efficiency: 11.32% 6.41k
CACHE HITS BY CACHE LIST:
Anonymously Used: 0.64% 28.65k
Most Recently Used: 21.90% 987.29k
Most Frequently Used: 77.47% 3.49m
Most Recently Used Ghost: 0.00% 0
Most Frequently Used Ghost: 0.00% 0
CACHE HITS BY DATA TYPE:
Demand Data: 71.40% 3.22m
Prefetch Data: 0.02% 725
Demand Metadata: 27.97% 1.26m
Prefetch Metadata: 0.62% 27.92k
CACHE MISSES BY DATA TYPE:
Demand Data: 31.81% 8.82k
Prefetch Data: 20.48% 5.68k
Demand Metadata: 21.99% 6.10k
Prefetch Metadata: 25.72% 7.13k
File-Level Prefetch: (HEALTHY)
DMU Efficiency: 36.39m
Hit Ratio: 93.36% 33.97m
Miss Ratio: 6.64% 2.42m
Colinear: 2.42m
Hit Ratio: 0.02% 505
Miss Ratio: 99.98% 2.42m
Stride: 33.94m
Hit Ratio: 100.00% 33.94m
Miss Ratio: 0.00% 14
DMU Misc:
Reclaim: 2.42m
Successes: 2.46% 59.51k
Failures: 97.54% 2.36m
Streams: 35.39k
+Resets: 0.05% 18
-Resets: 99.95% 35.37k
Bogus: 0
ZFS Tunable:
metaslab_debug_load 0
zfs_arc_min_prefetch_lifespan 0
zfetch_max_streams 8
zfs_nopwrite_enabled 1
zfetch_min_sec_reap 2
zfs_dbgmsg_enable 0
zfs_dirty_data_max_max_percent 25
zfs_arc_p_aggressive_disable 1
spa_load_verify_data 1
zfs_zevent_cols 80
zfs_dirty_data_max_percent 10
zfs_sync_pass_dont_compress 5
l2arc_write_max 8388608
zfs_vdev_scrub_max_active 2
zfs_vdev_sync_write_min_active 10
zvol_prefetch_bytes 131072
metaslab_aliquot 524288
zfs_no_scrub_prefetch 0
zfs_arc_shrink_shift 0
zfetch_block_cap 256
zfs_txg_history 0
zfs_delay_scale 500000
zfs_vdev_async_write_active_min_dirty_percent 30
metaslab_debug_unload 0
zfs_read_history 0
zvol_max_discard_blocks 16384
zfs_recover 0
l2arc_headroom 2
zfs_deadman_synctime_ms 1000000
zfs_scan_idle 50
zfs_free_min_time_ms 1000
zfs_dirty_data_max 1670300876
zfs_vdev_async_read_min_active 1
zfs_mg_noalloc_threshold 0
zfs_dedup_prefetch 0
zfs_vdev_max_active 1000
l2arc_write_boost 8388608
zfs_resilver_min_time_ms 3000
zfs_vdev_async_write_max_active 10
zil_slog_limit 1048576
zfs_prefetch_disable 0
zfs_resilver_delay 2
metaslab_lba_weighting_enabled 1
zfs_mg_fragmentation_threshold 85
l2arc_feed_again 1
zfs_zevent_console 0
zfs_immediate_write_sz 32768
zfs_dbgmsg_maxsize 4194304
zfs_free_leak_on_eio 0
zfs_deadman_enabled 1
metaslab_bias_enabled 1
zfs_arc_p_dampener_disable 1
zfs_object_mutex_size 64
zfs_metaslab_fragmentation_threshold 70
zfs_no_scrub_io 0
metaslabs_per_vdev 200
zfs_dbuf_state_index 0
zfs_vdev_sync_read_min_active 10
metaslab_fragmentation_factor_enabled 1
zvol_inhibit_dev 0
zfs_vdev_async_write_active_max_dirty_percent 60
zfs_vdev_cache_size 0
zfs_vdev_mirror_switch_us 10000
zfs_dirty_data_sync 67108864
spa_config_path /etc/zfs/zpool.cache
zfs_dirty_data_max_max 4175752192
zfs_arc_lotsfree_percent 10
zfs_zevent_len_max 128
zfs_scan_min_time_ms 1000
zfs_arc_sys_free 0
zfs_arc_meta_strategy 1
zfs_vdev_cache_bshift 16
zfs_arc_meta_adjust_restarts 4096
zfs_max_recordsize 1048576
zfs_vdev_scrub_min_active 1
zfs_vdev_read_gap_limit 32768
zfs_arc_meta_limit 0
zfs_vdev_sync_write_max_active 10
l2arc_norw 0
zfs_arc_meta_prune 10000
metaslab_preload_enabled 1
l2arc_nocompress 0
zvol_major 230
zfs_vdev_aggregation_limit 131072
zfs_flags 0
spa_asize_inflation 24
zfs_admin_snapshot 0
l2arc_feed_secs 1
zio_taskq_batch_pct 75
zfs_sync_pass_deferred_free 2
zfs_disable_dup_eviction 0
zfs_arc_grow_retry 0
zfs_read_history_hits 0
zfs_vdev_async_write_min_active 1
zfs_vdev_async_read_max_active 3
zfs_scrub_delay 4
zfs_delay_min_dirty_percent 60
zfs_free_max_blocks 100000
zfs_vdev_cache_max 16384
zio_delay_max 30000
zfs_top_maxinflight 32
spa_slop_shift 5
zfs_vdev_write_gap_limit 4096
spa_load_verify_metadata 1
spa_load_verify_maxinflight 10000
l2arc_noprefetch 1
zfs_vdev_scheduler noop
zfs_expire_snapshot 300
zfs_sync_pass_rewrite 2
zil_replay_disable 0
zfs_nocacheflush 0
zfs_arc_max 0
zfs_arc_min 0
zfs_read_chunk_size 1048576
zfs_txg_timeout 5
zfs_pd_bytes_max 52428800
l2arc_headroom_boost 200
zfs_send_corrupt_data 0
l2arc_feed_min_ms 200
zfs_arc_meta_min 0
zfs_arc_average_blocksize 8192
zfetch_array_rd_sz 1048576
zfs_autoimport_disable 1
zfs_arc_p_min_shift 0
zio_requeue_io_start_cut_in_line 1
zfs_vdev_sync_read_max_active 10
zfs_mdcomp_disable 0
zfs_arc_num_sublists_per_state 4
Both tools are well-documented and distributed upstream, see
https://github.com/zfsonlinux/zfs/blob/master/cmd/arcstat/arcstat.py
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary/arc_summary.py |
[Impact]
zfsutils-linux missing some important tools.
Python3 compatible scripts : arc_summary.py, arcstat.py and dbufstat.py found in src_code/cmd/ are not taken into account during compilation.
* arc_summary.py : Provides a summary of the statistics
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary
* arcstat.py : Print out ZFS ARC Statistics exported via kstat(1)
https://github.com/zfsonlinux/zfs/tree/master/cmd/arcstat
* dbufstat.py : Print out statistics for all cached dmu buffers. # https://github.com/zfsonlinux/zfs/blob/master/cmd/dbufstat
[Test Case]
# rmadison zfsutils-linux
...
zfsutils-linux | 0.6.5.6-0ubuntu10 | xenial-updates
...
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.6-0ubuntu10_amd64.deb | egrep "arcstat|arc_summary|dbufstat"
# You will notice there are not present.
[Regression Potential]
None expected, debian package[1] has already made the change to build the python scripts.
[1]
Package: zfsutils-linux
Source: zfs-linux
Version: 0.6.5.7-1
Architecture: amd64
Maintainer: Debian ZFS on Linux maintainers <pkg-zfsonlinux-devel@lists.alioth.debian.org>
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.7-1_amd64.deb | egrep -i "arc|dbufstat"
-rwxr-xr-x root/root 40751 2016-05-31 03:40 ./bin/arc_summary.py
-rwxr-xr-x root/root 13057 2016-05-31 03:40 ./bin/arcstat.py
-rwxr-xr-x root/root 18718 2016-05-31 03:40 ./bin/dbufstat.py
[Other Info]
* This is based on the following Debian commits :
Debian git commits
===
commit 730989397063955d60a1845003cfb7433eba1e52
Author: Aron Xu <aron@debian.org>
Date: Tue Apr 26 17:01:29 2016 +0800
Add dh-python to b-d
--
commit 814413118fb88de3ce596a87a8a011f50c225fdd
Author: Aron Xu <aron@debian.org>
Date: Sun Nov 22 15:44:16 2015 +0800
Add python related dependencies
===
* Despite what Debian did by adding theses script under /bin.
I'll add them under /usr/sbin, which is more appropriate.
* Unfortunately manpage for theses 3 program seems limited.
There is none in Debian nor git upstream repo.
The only manpage I found is for arcstat online :
http://linux.die.net/man/1/arcstat
[Original Description]
arcstat.py and arc_summary.py are valuable tools to determine ZFS' ARC usage, it is not obvious why they are not included in zfsutils-linux. As ubuntu-minimal already depends on python3 it should be safe to assume python is available, or am I mistaken here?
arcstat.py gives an iostat-like overview about ARC reads, hit rate, current and target size in regular intervals:
# ./arcstat.py 1
time read miss miss% dmis dm% pmis pm% mmis mm% arcsz c
19:22:33 0 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:34 3 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:35 21 0 0 0 0 0 0 0 0 2.0G 7.8G
^C
arc_summary.py shows a more detailed overview of the current ARC status and ZFS tunables:
# ./arc_summary.py
------------------------------------------------------------------------
ZFS Subsystem Report Sun Apr 24 19:23:25 2016
ARC Summary: (HEALTHY)
Memory Throttle Count: 0
ARC Misc:
Deleted: 46
Mutex Misses: 0
Evict Skips: 0
ARC Size: 25.10% 1.95 GiB
Target Size: (Adaptive) 100.00% 7.78 GiB
Min Size (Hard Limit): 0.40% 32.00 MiB
Max Size (High Water): 248:1 7.78 GiB
ARC Size Breakdown:
Recently Used Cache Size: 50.00% 3.89 GiB
Frequently Used Cache Size: 50.00% 3.89 GiB
ARC Hash Breakdown:
Elements Max: 32.31k
Elements Current: 99.78% 32.24k
Collisions: 40.54k
Chain Max: 3
Chains: 240
ARC Total accesses: 4.54m
Cache Hit Ratio: 99.39% 4.51m
Cache Miss Ratio: 0.61% 27.74k
Actual Hit Ratio: 98.76% 4.48m
Data Demand Efficiency: 99.73% 3.23m
Data Prefetch Efficiency: 11.32% 6.41k
CACHE HITS BY CACHE LIST:
Anonymously Used: 0.64% 28.65k
Most Recently Used: 21.90% 987.29k
Most Frequently Used: 77.47% 3.49m
Most Recently Used Ghost: 0.00% 0
Most Frequently Used Ghost: 0.00% 0
CACHE HITS BY DATA TYPE:
Demand Data: 71.40% 3.22m
Prefetch Data: 0.02% 725
Demand Metadata: 27.97% 1.26m
Prefetch Metadata: 0.62% 27.92k
CACHE MISSES BY DATA TYPE:
Demand Data: 31.81% 8.82k
Prefetch Data: 20.48% 5.68k
Demand Metadata: 21.99% 6.10k
Prefetch Metadata: 25.72% 7.13k
File-Level Prefetch: (HEALTHY)
DMU Efficiency: 36.39m
Hit Ratio: 93.36% 33.97m
Miss Ratio: 6.64% 2.42m
Colinear: 2.42m
Hit Ratio: 0.02% 505
Miss Ratio: 99.98% 2.42m
Stride: 33.94m
Hit Ratio: 100.00% 33.94m
Miss Ratio: 0.00% 14
DMU Misc:
Reclaim: 2.42m
Successes: 2.46% 59.51k
Failures: 97.54% 2.36m
Streams: 35.39k
+Resets: 0.05% 18
-Resets: 99.95% 35.37k
Bogus: 0
ZFS Tunable:
metaslab_debug_load 0
zfs_arc_min_prefetch_lifespan 0
zfetch_max_streams 8
zfs_nopwrite_enabled 1
zfetch_min_sec_reap 2
zfs_dbgmsg_enable 0
zfs_dirty_data_max_max_percent 25
zfs_arc_p_aggressive_disable 1
spa_load_verify_data 1
zfs_zevent_cols 80
zfs_dirty_data_max_percent 10
zfs_sync_pass_dont_compress 5
l2arc_write_max 8388608
zfs_vdev_scrub_max_active 2
zfs_vdev_sync_write_min_active 10
zvol_prefetch_bytes 131072
metaslab_aliquot 524288
zfs_no_scrub_prefetch 0
zfs_arc_shrink_shift 0
zfetch_block_cap 256
zfs_txg_history 0
zfs_delay_scale 500000
zfs_vdev_async_write_active_min_dirty_percent 30
metaslab_debug_unload 0
zfs_read_history 0
zvol_max_discard_blocks 16384
zfs_recover 0
l2arc_headroom 2
zfs_deadman_synctime_ms 1000000
zfs_scan_idle 50
zfs_free_min_time_ms 1000
zfs_dirty_data_max 1670300876
zfs_vdev_async_read_min_active 1
zfs_mg_noalloc_threshold 0
zfs_dedup_prefetch 0
zfs_vdev_max_active 1000
l2arc_write_boost 8388608
zfs_resilver_min_time_ms 3000
zfs_vdev_async_write_max_active 10
zil_slog_limit 1048576
zfs_prefetch_disable 0
zfs_resilver_delay 2
metaslab_lba_weighting_enabled 1
zfs_mg_fragmentation_threshold 85
l2arc_feed_again 1
zfs_zevent_console 0
zfs_immediate_write_sz 32768
zfs_dbgmsg_maxsize 4194304
zfs_free_leak_on_eio 0
zfs_deadman_enabled 1
metaslab_bias_enabled 1
zfs_arc_p_dampener_disable 1
zfs_object_mutex_size 64
zfs_metaslab_fragmentation_threshold 70
zfs_no_scrub_io 0
metaslabs_per_vdev 200
zfs_dbuf_state_index 0
zfs_vdev_sync_read_min_active 10
metaslab_fragmentation_factor_enabled 1
zvol_inhibit_dev 0
zfs_vdev_async_write_active_max_dirty_percent 60
zfs_vdev_cache_size 0
zfs_vdev_mirror_switch_us 10000
zfs_dirty_data_sync 67108864
spa_config_path /etc/zfs/zpool.cache
zfs_dirty_data_max_max 4175752192
zfs_arc_lotsfree_percent 10
zfs_zevent_len_max 128
zfs_scan_min_time_ms 1000
zfs_arc_sys_free 0
zfs_arc_meta_strategy 1
zfs_vdev_cache_bshift 16
zfs_arc_meta_adjust_restarts 4096
zfs_max_recordsize 1048576
zfs_vdev_scrub_min_active 1
zfs_vdev_read_gap_limit 32768
zfs_arc_meta_limit 0
zfs_vdev_sync_write_max_active 10
l2arc_norw 0
zfs_arc_meta_prune 10000
metaslab_preload_enabled 1
l2arc_nocompress 0
zvol_major 230
zfs_vdev_aggregation_limit 131072
zfs_flags 0
spa_asize_inflation 24
zfs_admin_snapshot 0
l2arc_feed_secs 1
zio_taskq_batch_pct 75
zfs_sync_pass_deferred_free 2
zfs_disable_dup_eviction 0
zfs_arc_grow_retry 0
zfs_read_history_hits 0
zfs_vdev_async_write_min_active 1
zfs_vdev_async_read_max_active 3
zfs_scrub_delay 4
zfs_delay_min_dirty_percent 60
zfs_free_max_blocks 100000
zfs_vdev_cache_max 16384
zio_delay_max 30000
zfs_top_maxinflight 32
spa_slop_shift 5
zfs_vdev_write_gap_limit 4096
spa_load_verify_metadata 1
spa_load_verify_maxinflight 10000
l2arc_noprefetch 1
zfs_vdev_scheduler noop
zfs_expire_snapshot 300
zfs_sync_pass_rewrite 2
zil_replay_disable 0
zfs_nocacheflush 0
zfs_arc_max 0
zfs_arc_min 0
zfs_read_chunk_size 1048576
zfs_txg_timeout 5
zfs_pd_bytes_max 52428800
l2arc_headroom_boost 200
zfs_send_corrupt_data 0
l2arc_feed_min_ms 200
zfs_arc_meta_min 0
zfs_arc_average_blocksize 8192
zfetch_array_rd_sz 1048576
zfs_autoimport_disable 1
zfs_arc_p_min_shift 0
zio_requeue_io_start_cut_in_line 1
zfs_vdev_sync_read_max_active 10
zfs_mdcomp_disable 0
zfs_arc_num_sublists_per_state 4
Both tools are well-documented and distributed upstream, see
https://github.com/zfsonlinux/zfs/blob/master/cmd/arcstat/arcstat.py
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary/arc_summary.py |
|
2016-07-28 00:35:21 |
Eric Desrochers |
bug |
|
|
added subscriber Colin Ian King |
2016-07-28 00:38:43 |
Eric Desrochers |
description |
[Impact]
zfsutils-linux missing some important tools.
Python3 compatible scripts : arc_summary.py, arcstat.py and dbufstat.py found in src_code/cmd/ are not taken into account during compilation.
* arc_summary.py : Provides a summary of the statistics
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary
* arcstat.py : Print out ZFS ARC Statistics exported via kstat(1)
https://github.com/zfsonlinux/zfs/tree/master/cmd/arcstat
* dbufstat.py : Print out statistics for all cached dmu buffers. # https://github.com/zfsonlinux/zfs/blob/master/cmd/dbufstat
[Test Case]
# rmadison zfsutils-linux
...
zfsutils-linux | 0.6.5.6-0ubuntu10 | xenial-updates
...
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.6-0ubuntu10_amd64.deb | egrep "arcstat|arc_summary|dbufstat"
# You will notice there are not present.
[Regression Potential]
None expected, debian package[1] has already made the change to build the python scripts.
[1]
Package: zfsutils-linux
Source: zfs-linux
Version: 0.6.5.7-1
Architecture: amd64
Maintainer: Debian ZFS on Linux maintainers <pkg-zfsonlinux-devel@lists.alioth.debian.org>
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.7-1_amd64.deb | egrep -i "arc|dbufstat"
-rwxr-xr-x root/root 40751 2016-05-31 03:40 ./bin/arc_summary.py
-rwxr-xr-x root/root 13057 2016-05-31 03:40 ./bin/arcstat.py
-rwxr-xr-x root/root 18718 2016-05-31 03:40 ./bin/dbufstat.py
[Other Info]
* This is based on the following Debian commits :
Debian git commits
===
commit 730989397063955d60a1845003cfb7433eba1e52
Author: Aron Xu <aron@debian.org>
Date: Tue Apr 26 17:01:29 2016 +0800
Add dh-python to b-d
--
commit 814413118fb88de3ce596a87a8a011f50c225fdd
Author: Aron Xu <aron@debian.org>
Date: Sun Nov 22 15:44:16 2015 +0800
Add python related dependencies
===
* Despite what Debian did by adding theses script under /bin.
I'll add them under /usr/sbin, which is more appropriate.
* Unfortunately manpage for theses 3 program seems limited.
There is none in Debian nor git upstream repo.
The only manpage I found is for arcstat online :
http://linux.die.net/man/1/arcstat
[Original Description]
arcstat.py and arc_summary.py are valuable tools to determine ZFS' ARC usage, it is not obvious why they are not included in zfsutils-linux. As ubuntu-minimal already depends on python3 it should be safe to assume python is available, or am I mistaken here?
arcstat.py gives an iostat-like overview about ARC reads, hit rate, current and target size in regular intervals:
# ./arcstat.py 1
time read miss miss% dmis dm% pmis pm% mmis mm% arcsz c
19:22:33 0 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:34 3 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:35 21 0 0 0 0 0 0 0 0 2.0G 7.8G
^C
arc_summary.py shows a more detailed overview of the current ARC status and ZFS tunables:
# ./arc_summary.py
------------------------------------------------------------------------
ZFS Subsystem Report Sun Apr 24 19:23:25 2016
ARC Summary: (HEALTHY)
Memory Throttle Count: 0
ARC Misc:
Deleted: 46
Mutex Misses: 0
Evict Skips: 0
ARC Size: 25.10% 1.95 GiB
Target Size: (Adaptive) 100.00% 7.78 GiB
Min Size (Hard Limit): 0.40% 32.00 MiB
Max Size (High Water): 248:1 7.78 GiB
ARC Size Breakdown:
Recently Used Cache Size: 50.00% 3.89 GiB
Frequently Used Cache Size: 50.00% 3.89 GiB
ARC Hash Breakdown:
Elements Max: 32.31k
Elements Current: 99.78% 32.24k
Collisions: 40.54k
Chain Max: 3
Chains: 240
ARC Total accesses: 4.54m
Cache Hit Ratio: 99.39% 4.51m
Cache Miss Ratio: 0.61% 27.74k
Actual Hit Ratio: 98.76% 4.48m
Data Demand Efficiency: 99.73% 3.23m
Data Prefetch Efficiency: 11.32% 6.41k
CACHE HITS BY CACHE LIST:
Anonymously Used: 0.64% 28.65k
Most Recently Used: 21.90% 987.29k
Most Frequently Used: 77.47% 3.49m
Most Recently Used Ghost: 0.00% 0
Most Frequently Used Ghost: 0.00% 0
CACHE HITS BY DATA TYPE:
Demand Data: 71.40% 3.22m
Prefetch Data: 0.02% 725
Demand Metadata: 27.97% 1.26m
Prefetch Metadata: 0.62% 27.92k
CACHE MISSES BY DATA TYPE:
Demand Data: 31.81% 8.82k
Prefetch Data: 20.48% 5.68k
Demand Metadata: 21.99% 6.10k
Prefetch Metadata: 25.72% 7.13k
File-Level Prefetch: (HEALTHY)
DMU Efficiency: 36.39m
Hit Ratio: 93.36% 33.97m
Miss Ratio: 6.64% 2.42m
Colinear: 2.42m
Hit Ratio: 0.02% 505
Miss Ratio: 99.98% 2.42m
Stride: 33.94m
Hit Ratio: 100.00% 33.94m
Miss Ratio: 0.00% 14
DMU Misc:
Reclaim: 2.42m
Successes: 2.46% 59.51k
Failures: 97.54% 2.36m
Streams: 35.39k
+Resets: 0.05% 18
-Resets: 99.95% 35.37k
Bogus: 0
ZFS Tunable:
metaslab_debug_load 0
zfs_arc_min_prefetch_lifespan 0
zfetch_max_streams 8
zfs_nopwrite_enabled 1
zfetch_min_sec_reap 2
zfs_dbgmsg_enable 0
zfs_dirty_data_max_max_percent 25
zfs_arc_p_aggressive_disable 1
spa_load_verify_data 1
zfs_zevent_cols 80
zfs_dirty_data_max_percent 10
zfs_sync_pass_dont_compress 5
l2arc_write_max 8388608
zfs_vdev_scrub_max_active 2
zfs_vdev_sync_write_min_active 10
zvol_prefetch_bytes 131072
metaslab_aliquot 524288
zfs_no_scrub_prefetch 0
zfs_arc_shrink_shift 0
zfetch_block_cap 256
zfs_txg_history 0
zfs_delay_scale 500000
zfs_vdev_async_write_active_min_dirty_percent 30
metaslab_debug_unload 0
zfs_read_history 0
zvol_max_discard_blocks 16384
zfs_recover 0
l2arc_headroom 2
zfs_deadman_synctime_ms 1000000
zfs_scan_idle 50
zfs_free_min_time_ms 1000
zfs_dirty_data_max 1670300876
zfs_vdev_async_read_min_active 1
zfs_mg_noalloc_threshold 0
zfs_dedup_prefetch 0
zfs_vdev_max_active 1000
l2arc_write_boost 8388608
zfs_resilver_min_time_ms 3000
zfs_vdev_async_write_max_active 10
zil_slog_limit 1048576
zfs_prefetch_disable 0
zfs_resilver_delay 2
metaslab_lba_weighting_enabled 1
zfs_mg_fragmentation_threshold 85
l2arc_feed_again 1
zfs_zevent_console 0
zfs_immediate_write_sz 32768
zfs_dbgmsg_maxsize 4194304
zfs_free_leak_on_eio 0
zfs_deadman_enabled 1
metaslab_bias_enabled 1
zfs_arc_p_dampener_disable 1
zfs_object_mutex_size 64
zfs_metaslab_fragmentation_threshold 70
zfs_no_scrub_io 0
metaslabs_per_vdev 200
zfs_dbuf_state_index 0
zfs_vdev_sync_read_min_active 10
metaslab_fragmentation_factor_enabled 1
zvol_inhibit_dev 0
zfs_vdev_async_write_active_max_dirty_percent 60
zfs_vdev_cache_size 0
zfs_vdev_mirror_switch_us 10000
zfs_dirty_data_sync 67108864
spa_config_path /etc/zfs/zpool.cache
zfs_dirty_data_max_max 4175752192
zfs_arc_lotsfree_percent 10
zfs_zevent_len_max 128
zfs_scan_min_time_ms 1000
zfs_arc_sys_free 0
zfs_arc_meta_strategy 1
zfs_vdev_cache_bshift 16
zfs_arc_meta_adjust_restarts 4096
zfs_max_recordsize 1048576
zfs_vdev_scrub_min_active 1
zfs_vdev_read_gap_limit 32768
zfs_arc_meta_limit 0
zfs_vdev_sync_write_max_active 10
l2arc_norw 0
zfs_arc_meta_prune 10000
metaslab_preload_enabled 1
l2arc_nocompress 0
zvol_major 230
zfs_vdev_aggregation_limit 131072
zfs_flags 0
spa_asize_inflation 24
zfs_admin_snapshot 0
l2arc_feed_secs 1
zio_taskq_batch_pct 75
zfs_sync_pass_deferred_free 2
zfs_disable_dup_eviction 0
zfs_arc_grow_retry 0
zfs_read_history_hits 0
zfs_vdev_async_write_min_active 1
zfs_vdev_async_read_max_active 3
zfs_scrub_delay 4
zfs_delay_min_dirty_percent 60
zfs_free_max_blocks 100000
zfs_vdev_cache_max 16384
zio_delay_max 30000
zfs_top_maxinflight 32
spa_slop_shift 5
zfs_vdev_write_gap_limit 4096
spa_load_verify_metadata 1
spa_load_verify_maxinflight 10000
l2arc_noprefetch 1
zfs_vdev_scheduler noop
zfs_expire_snapshot 300
zfs_sync_pass_rewrite 2
zil_replay_disable 0
zfs_nocacheflush 0
zfs_arc_max 0
zfs_arc_min 0
zfs_read_chunk_size 1048576
zfs_txg_timeout 5
zfs_pd_bytes_max 52428800
l2arc_headroom_boost 200
zfs_send_corrupt_data 0
l2arc_feed_min_ms 200
zfs_arc_meta_min 0
zfs_arc_average_blocksize 8192
zfetch_array_rd_sz 1048576
zfs_autoimport_disable 1
zfs_arc_p_min_shift 0
zio_requeue_io_start_cut_in_line 1
zfs_vdev_sync_read_max_active 10
zfs_mdcomp_disable 0
zfs_arc_num_sublists_per_state 4
Both tools are well-documented and distributed upstream, see
https://github.com/zfsonlinux/zfs/blob/master/cmd/arcstat/arcstat.py
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary/arc_summary.py |
[Impact]
zfsutils-linux missing some important tools.
Python3 compatible scripts : arc_summary.py, arcstat.py and dbufstat.py found in src_code/cmd/ are not taken into account during compilation.
* arc_summary.py : Provides a summary of the statistics
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary
* arcstat.py : Print out ZFS ARC Statistics exported via kstat(1)
https://github.com/zfsonlinux/zfs/tree/master/cmd/arcstat
* dbufstat.py : Print out statistics for all cached dmu buffers https://github.com/zfsonlinux/zfs/blob/master/cmd/dbufstat
[Test Case]
# rmadison zfsutils-linux
...
zfsutils-linux | 0.6.5.6-0ubuntu10 | xenial-updates
...
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.6-0ubuntu10_amd64.deb | egrep "arcstat|arc_summary|dbufstat"
# You will notice there are not present.
[Regression Potential]
None expected, debian package[1] has already made the change to build the python scripts.
[1]
Package: zfsutils-linux
Source: zfs-linux
Version: 0.6.5.7-1
Architecture: amd64
Maintainer: Debian ZFS on Linux maintainers <pkg-zfsonlinux-devel@lists.alioth.debian.org>
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.7-1_amd64.deb | egrep -i "arc|dbufstat"
-rwxr-xr-x root/root 40751 2016-05-31 03:40 ./bin/arc_summary.py
-rwxr-xr-x root/root 13057 2016-05-31 03:40 ./bin/arcstat.py
-rwxr-xr-x root/root 18718 2016-05-31 03:40 ./bin/dbufstat.py
[Other Info]
* This is based on the following Debian commits :
Debian git commits
===
commit 730989397063955d60a1845003cfb7433eba1e52
Author: Aron Xu <aron@debian.org>
Date: Tue Apr 26 17:01:29 2016 +0800
Add dh-python to b-d
--
commit 814413118fb88de3ce596a87a8a011f50c225fdd
Author: Aron Xu <aron@debian.org>
Date: Sun Nov 22 15:44:16 2015 +0800
Add python related dependencies
===
* Despite what Debian did by adding theses script under /bin.
I'll add them under /usr/sbin, which is more appropriate.
* Unfortunately manpage for theses 3 program seems limited.
There is none in Debian nor git upstream repo.
The only manpage I found is for arcstat online :
http://linux.die.net/man/1/arcstat
[Original Description]
arcstat.py and arc_summary.py are valuable tools to determine ZFS' ARC usage, it is not obvious why they are not included in zfsutils-linux. As ubuntu-minimal already depends on python3 it should be safe to assume python is available, or am I mistaken here?
arcstat.py gives an iostat-like overview about ARC reads, hit rate, current and target size in regular intervals:
# ./arcstat.py 1
time read miss miss% dmis dm% pmis pm% mmis mm% arcsz c
19:22:33 0 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:34 3 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:35 21 0 0 0 0 0 0 0 0 2.0G 7.8G
^C
arc_summary.py shows a more detailed overview of the current ARC status and ZFS tunables:
# ./arc_summary.py
------------------------------------------------------------------------
ZFS Subsystem Report Sun Apr 24 19:23:25 2016
ARC Summary: (HEALTHY)
Memory Throttle Count: 0
ARC Misc:
Deleted: 46
Mutex Misses: 0
Evict Skips: 0
ARC Size: 25.10% 1.95 GiB
Target Size: (Adaptive) 100.00% 7.78 GiB
Min Size (Hard Limit): 0.40% 32.00 MiB
Max Size (High Water): 248:1 7.78 GiB
ARC Size Breakdown:
Recently Used Cache Size: 50.00% 3.89 GiB
Frequently Used Cache Size: 50.00% 3.89 GiB
ARC Hash Breakdown:
Elements Max: 32.31k
Elements Current: 99.78% 32.24k
Collisions: 40.54k
Chain Max: 3
Chains: 240
ARC Total accesses: 4.54m
Cache Hit Ratio: 99.39% 4.51m
Cache Miss Ratio: 0.61% 27.74k
Actual Hit Ratio: 98.76% 4.48m
Data Demand Efficiency: 99.73% 3.23m
Data Prefetch Efficiency: 11.32% 6.41k
CACHE HITS BY CACHE LIST:
Anonymously Used: 0.64% 28.65k
Most Recently Used: 21.90% 987.29k
Most Frequently Used: 77.47% 3.49m
Most Recently Used Ghost: 0.00% 0
Most Frequently Used Ghost: 0.00% 0
CACHE HITS BY DATA TYPE:
Demand Data: 71.40% 3.22m
Prefetch Data: 0.02% 725
Demand Metadata: 27.97% 1.26m
Prefetch Metadata: 0.62% 27.92k
CACHE MISSES BY DATA TYPE:
Demand Data: 31.81% 8.82k
Prefetch Data: 20.48% 5.68k
Demand Metadata: 21.99% 6.10k
Prefetch Metadata: 25.72% 7.13k
File-Level Prefetch: (HEALTHY)
DMU Efficiency: 36.39m
Hit Ratio: 93.36% 33.97m
Miss Ratio: 6.64% 2.42m
Colinear: 2.42m
Hit Ratio: 0.02% 505
Miss Ratio: 99.98% 2.42m
Stride: 33.94m
Hit Ratio: 100.00% 33.94m
Miss Ratio: 0.00% 14
DMU Misc:
Reclaim: 2.42m
Successes: 2.46% 59.51k
Failures: 97.54% 2.36m
Streams: 35.39k
+Resets: 0.05% 18
-Resets: 99.95% 35.37k
Bogus: 0
ZFS Tunable:
metaslab_debug_load 0
zfs_arc_min_prefetch_lifespan 0
zfetch_max_streams 8
zfs_nopwrite_enabled 1
zfetch_min_sec_reap 2
zfs_dbgmsg_enable 0
zfs_dirty_data_max_max_percent 25
zfs_arc_p_aggressive_disable 1
spa_load_verify_data 1
zfs_zevent_cols 80
zfs_dirty_data_max_percent 10
zfs_sync_pass_dont_compress 5
l2arc_write_max 8388608
zfs_vdev_scrub_max_active 2
zfs_vdev_sync_write_min_active 10
zvol_prefetch_bytes 131072
metaslab_aliquot 524288
zfs_no_scrub_prefetch 0
zfs_arc_shrink_shift 0
zfetch_block_cap 256
zfs_txg_history 0
zfs_delay_scale 500000
zfs_vdev_async_write_active_min_dirty_percent 30
metaslab_debug_unload 0
zfs_read_history 0
zvol_max_discard_blocks 16384
zfs_recover 0
l2arc_headroom 2
zfs_deadman_synctime_ms 1000000
zfs_scan_idle 50
zfs_free_min_time_ms 1000
zfs_dirty_data_max 1670300876
zfs_vdev_async_read_min_active 1
zfs_mg_noalloc_threshold 0
zfs_dedup_prefetch 0
zfs_vdev_max_active 1000
l2arc_write_boost 8388608
zfs_resilver_min_time_ms 3000
zfs_vdev_async_write_max_active 10
zil_slog_limit 1048576
zfs_prefetch_disable 0
zfs_resilver_delay 2
metaslab_lba_weighting_enabled 1
zfs_mg_fragmentation_threshold 85
l2arc_feed_again 1
zfs_zevent_console 0
zfs_immediate_write_sz 32768
zfs_dbgmsg_maxsize 4194304
zfs_free_leak_on_eio 0
zfs_deadman_enabled 1
metaslab_bias_enabled 1
zfs_arc_p_dampener_disable 1
zfs_object_mutex_size 64
zfs_metaslab_fragmentation_threshold 70
zfs_no_scrub_io 0
metaslabs_per_vdev 200
zfs_dbuf_state_index 0
zfs_vdev_sync_read_min_active 10
metaslab_fragmentation_factor_enabled 1
zvol_inhibit_dev 0
zfs_vdev_async_write_active_max_dirty_percent 60
zfs_vdev_cache_size 0
zfs_vdev_mirror_switch_us 10000
zfs_dirty_data_sync 67108864
spa_config_path /etc/zfs/zpool.cache
zfs_dirty_data_max_max 4175752192
zfs_arc_lotsfree_percent 10
zfs_zevent_len_max 128
zfs_scan_min_time_ms 1000
zfs_arc_sys_free 0
zfs_arc_meta_strategy 1
zfs_vdev_cache_bshift 16
zfs_arc_meta_adjust_restarts 4096
zfs_max_recordsize 1048576
zfs_vdev_scrub_min_active 1
zfs_vdev_read_gap_limit 32768
zfs_arc_meta_limit 0
zfs_vdev_sync_write_max_active 10
l2arc_norw 0
zfs_arc_meta_prune 10000
metaslab_preload_enabled 1
l2arc_nocompress 0
zvol_major 230
zfs_vdev_aggregation_limit 131072
zfs_flags 0
spa_asize_inflation 24
zfs_admin_snapshot 0
l2arc_feed_secs 1
zio_taskq_batch_pct 75
zfs_sync_pass_deferred_free 2
zfs_disable_dup_eviction 0
zfs_arc_grow_retry 0
zfs_read_history_hits 0
zfs_vdev_async_write_min_active 1
zfs_vdev_async_read_max_active 3
zfs_scrub_delay 4
zfs_delay_min_dirty_percent 60
zfs_free_max_blocks 100000
zfs_vdev_cache_max 16384
zio_delay_max 30000
zfs_top_maxinflight 32
spa_slop_shift 5
zfs_vdev_write_gap_limit 4096
spa_load_verify_metadata 1
spa_load_verify_maxinflight 10000
l2arc_noprefetch 1
zfs_vdev_scheduler noop
zfs_expire_snapshot 300
zfs_sync_pass_rewrite 2
zil_replay_disable 0
zfs_nocacheflush 0
zfs_arc_max 0
zfs_arc_min 0
zfs_read_chunk_size 1048576
zfs_txg_timeout 5
zfs_pd_bytes_max 52428800
l2arc_headroom_boost 200
zfs_send_corrupt_data 0
l2arc_feed_min_ms 200
zfs_arc_meta_min 0
zfs_arc_average_blocksize 8192
zfetch_array_rd_sz 1048576
zfs_autoimport_disable 1
zfs_arc_p_min_shift 0
zio_requeue_io_start_cut_in_line 1
zfs_vdev_sync_read_max_active 10
zfs_mdcomp_disable 0
zfs_arc_num_sublists_per_state 4
Both tools are well-documented and distributed upstream, see
https://github.com/zfsonlinux/zfs/blob/master/cmd/arcstat/arcstat.py
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary/arc_summary.py |
|
2016-07-28 00:38:57 |
Eric Desrochers |
description |
[Impact]
zfsutils-linux missing some important tools.
Python3 compatible scripts : arc_summary.py, arcstat.py and dbufstat.py found in src_code/cmd/ are not taken into account during compilation.
* arc_summary.py : Provides a summary of the statistics
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary
* arcstat.py : Print out ZFS ARC Statistics exported via kstat(1)
https://github.com/zfsonlinux/zfs/tree/master/cmd/arcstat
* dbufstat.py : Print out statistics for all cached dmu buffers https://github.com/zfsonlinux/zfs/blob/master/cmd/dbufstat
[Test Case]
# rmadison zfsutils-linux
...
zfsutils-linux | 0.6.5.6-0ubuntu10 | xenial-updates
...
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.6-0ubuntu10_amd64.deb | egrep "arcstat|arc_summary|dbufstat"
# You will notice there are not present.
[Regression Potential]
None expected, debian package[1] has already made the change to build the python scripts.
[1]
Package: zfsutils-linux
Source: zfs-linux
Version: 0.6.5.7-1
Architecture: amd64
Maintainer: Debian ZFS on Linux maintainers <pkg-zfsonlinux-devel@lists.alioth.debian.org>
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.7-1_amd64.deb | egrep -i "arc|dbufstat"
-rwxr-xr-x root/root 40751 2016-05-31 03:40 ./bin/arc_summary.py
-rwxr-xr-x root/root 13057 2016-05-31 03:40 ./bin/arcstat.py
-rwxr-xr-x root/root 18718 2016-05-31 03:40 ./bin/dbufstat.py
[Other Info]
* This is based on the following Debian commits :
Debian git commits
===
commit 730989397063955d60a1845003cfb7433eba1e52
Author: Aron Xu <aron@debian.org>
Date: Tue Apr 26 17:01:29 2016 +0800
Add dh-python to b-d
--
commit 814413118fb88de3ce596a87a8a011f50c225fdd
Author: Aron Xu <aron@debian.org>
Date: Sun Nov 22 15:44:16 2015 +0800
Add python related dependencies
===
* Despite what Debian did by adding theses script under /bin.
I'll add them under /usr/sbin, which is more appropriate.
* Unfortunately manpage for theses 3 program seems limited.
There is none in Debian nor git upstream repo.
The only manpage I found is for arcstat online :
http://linux.die.net/man/1/arcstat
[Original Description]
arcstat.py and arc_summary.py are valuable tools to determine ZFS' ARC usage, it is not obvious why they are not included in zfsutils-linux. As ubuntu-minimal already depends on python3 it should be safe to assume python is available, or am I mistaken here?
arcstat.py gives an iostat-like overview about ARC reads, hit rate, current and target size in regular intervals:
# ./arcstat.py 1
time read miss miss% dmis dm% pmis pm% mmis mm% arcsz c
19:22:33 0 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:34 3 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:35 21 0 0 0 0 0 0 0 0 2.0G 7.8G
^C
arc_summary.py shows a more detailed overview of the current ARC status and ZFS tunables:
# ./arc_summary.py
------------------------------------------------------------------------
ZFS Subsystem Report Sun Apr 24 19:23:25 2016
ARC Summary: (HEALTHY)
Memory Throttle Count: 0
ARC Misc:
Deleted: 46
Mutex Misses: 0
Evict Skips: 0
ARC Size: 25.10% 1.95 GiB
Target Size: (Adaptive) 100.00% 7.78 GiB
Min Size (Hard Limit): 0.40% 32.00 MiB
Max Size (High Water): 248:1 7.78 GiB
ARC Size Breakdown:
Recently Used Cache Size: 50.00% 3.89 GiB
Frequently Used Cache Size: 50.00% 3.89 GiB
ARC Hash Breakdown:
Elements Max: 32.31k
Elements Current: 99.78% 32.24k
Collisions: 40.54k
Chain Max: 3
Chains: 240
ARC Total accesses: 4.54m
Cache Hit Ratio: 99.39% 4.51m
Cache Miss Ratio: 0.61% 27.74k
Actual Hit Ratio: 98.76% 4.48m
Data Demand Efficiency: 99.73% 3.23m
Data Prefetch Efficiency: 11.32% 6.41k
CACHE HITS BY CACHE LIST:
Anonymously Used: 0.64% 28.65k
Most Recently Used: 21.90% 987.29k
Most Frequently Used: 77.47% 3.49m
Most Recently Used Ghost: 0.00% 0
Most Frequently Used Ghost: 0.00% 0
CACHE HITS BY DATA TYPE:
Demand Data: 71.40% 3.22m
Prefetch Data: 0.02% 725
Demand Metadata: 27.97% 1.26m
Prefetch Metadata: 0.62% 27.92k
CACHE MISSES BY DATA TYPE:
Demand Data: 31.81% 8.82k
Prefetch Data: 20.48% 5.68k
Demand Metadata: 21.99% 6.10k
Prefetch Metadata: 25.72% 7.13k
File-Level Prefetch: (HEALTHY)
DMU Efficiency: 36.39m
Hit Ratio: 93.36% 33.97m
Miss Ratio: 6.64% 2.42m
Colinear: 2.42m
Hit Ratio: 0.02% 505
Miss Ratio: 99.98% 2.42m
Stride: 33.94m
Hit Ratio: 100.00% 33.94m
Miss Ratio: 0.00% 14
DMU Misc:
Reclaim: 2.42m
Successes: 2.46% 59.51k
Failures: 97.54% 2.36m
Streams: 35.39k
+Resets: 0.05% 18
-Resets: 99.95% 35.37k
Bogus: 0
ZFS Tunable:
metaslab_debug_load 0
zfs_arc_min_prefetch_lifespan 0
zfetch_max_streams 8
zfs_nopwrite_enabled 1
zfetch_min_sec_reap 2
zfs_dbgmsg_enable 0
zfs_dirty_data_max_max_percent 25
zfs_arc_p_aggressive_disable 1
spa_load_verify_data 1
zfs_zevent_cols 80
zfs_dirty_data_max_percent 10
zfs_sync_pass_dont_compress 5
l2arc_write_max 8388608
zfs_vdev_scrub_max_active 2
zfs_vdev_sync_write_min_active 10
zvol_prefetch_bytes 131072
metaslab_aliquot 524288
zfs_no_scrub_prefetch 0
zfs_arc_shrink_shift 0
zfetch_block_cap 256
zfs_txg_history 0
zfs_delay_scale 500000
zfs_vdev_async_write_active_min_dirty_percent 30
metaslab_debug_unload 0
zfs_read_history 0
zvol_max_discard_blocks 16384
zfs_recover 0
l2arc_headroom 2
zfs_deadman_synctime_ms 1000000
zfs_scan_idle 50
zfs_free_min_time_ms 1000
zfs_dirty_data_max 1670300876
zfs_vdev_async_read_min_active 1
zfs_mg_noalloc_threshold 0
zfs_dedup_prefetch 0
zfs_vdev_max_active 1000
l2arc_write_boost 8388608
zfs_resilver_min_time_ms 3000
zfs_vdev_async_write_max_active 10
zil_slog_limit 1048576
zfs_prefetch_disable 0
zfs_resilver_delay 2
metaslab_lba_weighting_enabled 1
zfs_mg_fragmentation_threshold 85
l2arc_feed_again 1
zfs_zevent_console 0
zfs_immediate_write_sz 32768
zfs_dbgmsg_maxsize 4194304
zfs_free_leak_on_eio 0
zfs_deadman_enabled 1
metaslab_bias_enabled 1
zfs_arc_p_dampener_disable 1
zfs_object_mutex_size 64
zfs_metaslab_fragmentation_threshold 70
zfs_no_scrub_io 0
metaslabs_per_vdev 200
zfs_dbuf_state_index 0
zfs_vdev_sync_read_min_active 10
metaslab_fragmentation_factor_enabled 1
zvol_inhibit_dev 0
zfs_vdev_async_write_active_max_dirty_percent 60
zfs_vdev_cache_size 0
zfs_vdev_mirror_switch_us 10000
zfs_dirty_data_sync 67108864
spa_config_path /etc/zfs/zpool.cache
zfs_dirty_data_max_max 4175752192
zfs_arc_lotsfree_percent 10
zfs_zevent_len_max 128
zfs_scan_min_time_ms 1000
zfs_arc_sys_free 0
zfs_arc_meta_strategy 1
zfs_vdev_cache_bshift 16
zfs_arc_meta_adjust_restarts 4096
zfs_max_recordsize 1048576
zfs_vdev_scrub_min_active 1
zfs_vdev_read_gap_limit 32768
zfs_arc_meta_limit 0
zfs_vdev_sync_write_max_active 10
l2arc_norw 0
zfs_arc_meta_prune 10000
metaslab_preload_enabled 1
l2arc_nocompress 0
zvol_major 230
zfs_vdev_aggregation_limit 131072
zfs_flags 0
spa_asize_inflation 24
zfs_admin_snapshot 0
l2arc_feed_secs 1
zio_taskq_batch_pct 75
zfs_sync_pass_deferred_free 2
zfs_disable_dup_eviction 0
zfs_arc_grow_retry 0
zfs_read_history_hits 0
zfs_vdev_async_write_min_active 1
zfs_vdev_async_read_max_active 3
zfs_scrub_delay 4
zfs_delay_min_dirty_percent 60
zfs_free_max_blocks 100000
zfs_vdev_cache_max 16384
zio_delay_max 30000
zfs_top_maxinflight 32
spa_slop_shift 5
zfs_vdev_write_gap_limit 4096
spa_load_verify_metadata 1
spa_load_verify_maxinflight 10000
l2arc_noprefetch 1
zfs_vdev_scheduler noop
zfs_expire_snapshot 300
zfs_sync_pass_rewrite 2
zil_replay_disable 0
zfs_nocacheflush 0
zfs_arc_max 0
zfs_arc_min 0
zfs_read_chunk_size 1048576
zfs_txg_timeout 5
zfs_pd_bytes_max 52428800
l2arc_headroom_boost 200
zfs_send_corrupt_data 0
l2arc_feed_min_ms 200
zfs_arc_meta_min 0
zfs_arc_average_blocksize 8192
zfetch_array_rd_sz 1048576
zfs_autoimport_disable 1
zfs_arc_p_min_shift 0
zio_requeue_io_start_cut_in_line 1
zfs_vdev_sync_read_max_active 10
zfs_mdcomp_disable 0
zfs_arc_num_sublists_per_state 4
Both tools are well-documented and distributed upstream, see
https://github.com/zfsonlinux/zfs/blob/master/cmd/arcstat/arcstat.py
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary/arc_summary.py |
[Impact]
zfsutils-linux missing some important tools.
Python3 compatible scripts : arc_summary.py, arcstat.py and dbufstat.py found in src_code/cmd/ are not taken into account during compilation.
* arc_summary.py : Provides a summary of the statistics
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary
* arcstat.py : Print out ZFS ARC Statistics exported via kstat(1)
https://github.com/zfsonlinux/zfs/tree/master/cmd/arcstat
* dbufstat.py : Print out statistics for all cached dmu buffers
https://github.com/zfsonlinux/zfs/blob/master/cmd/dbufstat
[Test Case]
# rmadison zfsutils-linux
...
zfsutils-linux | 0.6.5.6-0ubuntu10 | xenial-updates
...
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.6-0ubuntu10_amd64.deb | egrep "arcstat|arc_summary|dbufstat"
# You will notice there are not present.
[Regression Potential]
None expected, debian package[1] has already made the change to build the python scripts.
[1]
Package: zfsutils-linux
Source: zfs-linux
Version: 0.6.5.7-1
Architecture: amd64
Maintainer: Debian ZFS on Linux maintainers <pkg-zfsonlinux-devel@lists.alioth.debian.org>
# List contents of a deb package.
$ dpkg -c zfsutils-linux_0.6.5.7-1_amd64.deb | egrep -i "arc|dbufstat"
-rwxr-xr-x root/root 40751 2016-05-31 03:40 ./bin/arc_summary.py
-rwxr-xr-x root/root 13057 2016-05-31 03:40 ./bin/arcstat.py
-rwxr-xr-x root/root 18718 2016-05-31 03:40 ./bin/dbufstat.py
[Other Info]
* This is based on the following Debian commits :
Debian git commits
===
commit 730989397063955d60a1845003cfb7433eba1e52
Author: Aron Xu <aron@debian.org>
Date: Tue Apr 26 17:01:29 2016 +0800
Add dh-python to b-d
--
commit 814413118fb88de3ce596a87a8a011f50c225fdd
Author: Aron Xu <aron@debian.org>
Date: Sun Nov 22 15:44:16 2015 +0800
Add python related dependencies
===
* Despite what Debian did by adding theses script under /bin.
I'll add them under /usr/sbin, which is more appropriate.
* Unfortunately manpage for theses 3 program seems limited.
There is none in Debian nor git upstream repo.
The only manpage I found is for arcstat online :
http://linux.die.net/man/1/arcstat
[Original Description]
arcstat.py and arc_summary.py are valuable tools to determine ZFS' ARC usage, it is not obvious why they are not included in zfsutils-linux. As ubuntu-minimal already depends on python3 it should be safe to assume python is available, or am I mistaken here?
arcstat.py gives an iostat-like overview about ARC reads, hit rate, current and target size in regular intervals:
# ./arcstat.py 1
time read miss miss% dmis dm% pmis pm% mmis mm% arcsz c
19:22:33 0 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:34 3 0 0 0 0 0 0 0 0 2.0G 7.8G
19:22:35 21 0 0 0 0 0 0 0 0 2.0G 7.8G
^C
arc_summary.py shows a more detailed overview of the current ARC status and ZFS tunables:
# ./arc_summary.py
------------------------------------------------------------------------
ZFS Subsystem Report Sun Apr 24 19:23:25 2016
ARC Summary: (HEALTHY)
Memory Throttle Count: 0
ARC Misc:
Deleted: 46
Mutex Misses: 0
Evict Skips: 0
ARC Size: 25.10% 1.95 GiB
Target Size: (Adaptive) 100.00% 7.78 GiB
Min Size (Hard Limit): 0.40% 32.00 MiB
Max Size (High Water): 248:1 7.78 GiB
ARC Size Breakdown:
Recently Used Cache Size: 50.00% 3.89 GiB
Frequently Used Cache Size: 50.00% 3.89 GiB
ARC Hash Breakdown:
Elements Max: 32.31k
Elements Current: 99.78% 32.24k
Collisions: 40.54k
Chain Max: 3
Chains: 240
ARC Total accesses: 4.54m
Cache Hit Ratio: 99.39% 4.51m
Cache Miss Ratio: 0.61% 27.74k
Actual Hit Ratio: 98.76% 4.48m
Data Demand Efficiency: 99.73% 3.23m
Data Prefetch Efficiency: 11.32% 6.41k
CACHE HITS BY CACHE LIST:
Anonymously Used: 0.64% 28.65k
Most Recently Used: 21.90% 987.29k
Most Frequently Used: 77.47% 3.49m
Most Recently Used Ghost: 0.00% 0
Most Frequently Used Ghost: 0.00% 0
CACHE HITS BY DATA TYPE:
Demand Data: 71.40% 3.22m
Prefetch Data: 0.02% 725
Demand Metadata: 27.97% 1.26m
Prefetch Metadata: 0.62% 27.92k
CACHE MISSES BY DATA TYPE:
Demand Data: 31.81% 8.82k
Prefetch Data: 20.48% 5.68k
Demand Metadata: 21.99% 6.10k
Prefetch Metadata: 25.72% 7.13k
File-Level Prefetch: (HEALTHY)
DMU Efficiency: 36.39m
Hit Ratio: 93.36% 33.97m
Miss Ratio: 6.64% 2.42m
Colinear: 2.42m
Hit Ratio: 0.02% 505
Miss Ratio: 99.98% 2.42m
Stride: 33.94m
Hit Ratio: 100.00% 33.94m
Miss Ratio: 0.00% 14
DMU Misc:
Reclaim: 2.42m
Successes: 2.46% 59.51k
Failures: 97.54% 2.36m
Streams: 35.39k
+Resets: 0.05% 18
-Resets: 99.95% 35.37k
Bogus: 0
ZFS Tunable:
metaslab_debug_load 0
zfs_arc_min_prefetch_lifespan 0
zfetch_max_streams 8
zfs_nopwrite_enabled 1
zfetch_min_sec_reap 2
zfs_dbgmsg_enable 0
zfs_dirty_data_max_max_percent 25
zfs_arc_p_aggressive_disable 1
spa_load_verify_data 1
zfs_zevent_cols 80
zfs_dirty_data_max_percent 10
zfs_sync_pass_dont_compress 5
l2arc_write_max 8388608
zfs_vdev_scrub_max_active 2
zfs_vdev_sync_write_min_active 10
zvol_prefetch_bytes 131072
metaslab_aliquot 524288
zfs_no_scrub_prefetch 0
zfs_arc_shrink_shift 0
zfetch_block_cap 256
zfs_txg_history 0
zfs_delay_scale 500000
zfs_vdev_async_write_active_min_dirty_percent 30
metaslab_debug_unload 0
zfs_read_history 0
zvol_max_discard_blocks 16384
zfs_recover 0
l2arc_headroom 2
zfs_deadman_synctime_ms 1000000
zfs_scan_idle 50
zfs_free_min_time_ms 1000
zfs_dirty_data_max 1670300876
zfs_vdev_async_read_min_active 1
zfs_mg_noalloc_threshold 0
zfs_dedup_prefetch 0
zfs_vdev_max_active 1000
l2arc_write_boost 8388608
zfs_resilver_min_time_ms 3000
zfs_vdev_async_write_max_active 10
zil_slog_limit 1048576
zfs_prefetch_disable 0
zfs_resilver_delay 2
metaslab_lba_weighting_enabled 1
zfs_mg_fragmentation_threshold 85
l2arc_feed_again 1
zfs_zevent_console 0
zfs_immediate_write_sz 32768
zfs_dbgmsg_maxsize 4194304
zfs_free_leak_on_eio 0
zfs_deadman_enabled 1
metaslab_bias_enabled 1
zfs_arc_p_dampener_disable 1
zfs_object_mutex_size 64
zfs_metaslab_fragmentation_threshold 70
zfs_no_scrub_io 0
metaslabs_per_vdev 200
zfs_dbuf_state_index 0
zfs_vdev_sync_read_min_active 10
metaslab_fragmentation_factor_enabled 1
zvol_inhibit_dev 0
zfs_vdev_async_write_active_max_dirty_percent 60
zfs_vdev_cache_size 0
zfs_vdev_mirror_switch_us 10000
zfs_dirty_data_sync 67108864
spa_config_path /etc/zfs/zpool.cache
zfs_dirty_data_max_max 4175752192
zfs_arc_lotsfree_percent 10
zfs_zevent_len_max 128
zfs_scan_min_time_ms 1000
zfs_arc_sys_free 0
zfs_arc_meta_strategy 1
zfs_vdev_cache_bshift 16
zfs_arc_meta_adjust_restarts 4096
zfs_max_recordsize 1048576
zfs_vdev_scrub_min_active 1
zfs_vdev_read_gap_limit 32768
zfs_arc_meta_limit 0
zfs_vdev_sync_write_max_active 10
l2arc_norw 0
zfs_arc_meta_prune 10000
metaslab_preload_enabled 1
l2arc_nocompress 0
zvol_major 230
zfs_vdev_aggregation_limit 131072
zfs_flags 0
spa_asize_inflation 24
zfs_admin_snapshot 0
l2arc_feed_secs 1
zio_taskq_batch_pct 75
zfs_sync_pass_deferred_free 2
zfs_disable_dup_eviction 0
zfs_arc_grow_retry 0
zfs_read_history_hits 0
zfs_vdev_async_write_min_active 1
zfs_vdev_async_read_max_active 3
zfs_scrub_delay 4
zfs_delay_min_dirty_percent 60
zfs_free_max_blocks 100000
zfs_vdev_cache_max 16384
zio_delay_max 30000
zfs_top_maxinflight 32
spa_slop_shift 5
zfs_vdev_write_gap_limit 4096
spa_load_verify_metadata 1
spa_load_verify_maxinflight 10000
l2arc_noprefetch 1
zfs_vdev_scheduler noop
zfs_expire_snapshot 300
zfs_sync_pass_rewrite 2
zil_replay_disable 0
zfs_nocacheflush 0
zfs_arc_max 0
zfs_arc_min 0
zfs_read_chunk_size 1048576
zfs_txg_timeout 5
zfs_pd_bytes_max 52428800
l2arc_headroom_boost 200
zfs_send_corrupt_data 0
l2arc_feed_min_ms 200
zfs_arc_meta_min 0
zfs_arc_average_blocksize 8192
zfetch_array_rd_sz 1048576
zfs_autoimport_disable 1
zfs_arc_p_min_shift 0
zio_requeue_io_start_cut_in_line 1
zfs_vdev_sync_read_max_active 10
zfs_mdcomp_disable 0
zfs_arc_num_sublists_per_state 4
Both tools are well-documented and distributed upstream, see
https://github.com/zfsonlinux/zfs/blob/master/cmd/arcstat/arcstat.py
https://github.com/zfsonlinux/zfs/blob/master/cmd/arc_summary/arc_summary.py |
|
2016-07-28 05:13:58 |
Dominique Poulain |
bug |
|
|
added subscriber Dominique Poulain |
2016-07-28 16:09:19 |
Eric Desrochers |
attachment added |
|
Debdiff for Yakkety (16.10) https://bugs.launchpad.net/ubuntu/xenial/+source/zfs-linux/+bug/1574342/+attachment/4708820/+files/lp1574342_yakkety.debdiff |
|
2016-07-28 16:11:18 |
Eric Desrochers |
tags |
|
patch sts |
|
2016-07-28 16:11:31 |
Eric Desrochers |
bug |
|
|
added subscriber SRU Verification |
2016-07-28 16:11:40 |
Eric Desrochers |
bug |
|
|
added subscriber Ubuntu Sponsors Team |
2016-07-28 16:21:22 |
Eric Desrochers |
attachment added |
|
Debdiff for Xenial (16.04) https://bugs.launchpad.net/ubuntu/xenial/+source/zfs-linux/+bug/1574342/+attachment/4708833/+files/lp574342_xenial.debdiff |
|
2016-07-28 17:51:39 |
Scott Emmons |
bug |
|
|
added subscriber scotte |
2016-07-28 20:32:14 |
Eric Desrochers |
attachment added |
|
Debdiff for Xenial V2 (16.04) https://bugs.launchpad.net/ubuntu/yakkety/+source/zfs-linux/+bug/1574342/+attachment/4708945/+files/zfs-linux-xenial-v2.debdiff |
|
2016-07-28 20:32:39 |
Eric Desrochers |
attachment added |
|
Debdiff for Xenial V2 (16.10) https://bugs.launchpad.net/ubuntu/yakkety/+source/zfs-linux/+bug/1574342/+attachment/4708946/+files/zfs-linux-yakkety-v2.debdiff |
|
2016-07-28 20:44:48 |
Eric Desrochers |
attachment removed |
Debdiff for Xenial V2 (16.04) https://bugs.launchpad.net/ubuntu/yakkety/+source/zfs-linux/+bug/1574342/+attachment/4708945/+files/zfs-linux-xenial-v2.debdiff |
|
|
2016-07-28 20:45:23 |
Eric Desrochers |
attachment added |
|
Debdiff for Xenial V2 (16.04) https://bugs.launchpad.net/ubuntu/yakkety/+source/zfs-linux/+bug/1574342/+attachment/4708949/+files/zfs-linux-xenial-v2.debdiff |
|
2016-07-28 20:47:24 |
Eric Desrochers |
attachment removed |
Debdiff for Xenial (16.04) https://bugs.launchpad.net/ubuntu/yakkety/+source/zfs-linux/+bug/1574342/+attachment/4708833/+files/lp574342_xenial.debdiff |
|
|
2016-07-28 20:47:39 |
Eric Desrochers |
attachment removed |
Debdiff for Yakkety (16.10) https://bugs.launchpad.net/ubuntu/yakkety/+source/zfs-linux/+bug/1574342/+attachment/4708820/+files/lp1574342_yakkety.debdiff |
|
|
2016-07-29 15:45:34 |
Andy Whitcroft |
zfs-linux (Ubuntu Xenial): status |
In Progress |
Fix Committed |
|
2016-07-29 15:45:35 |
Andy Whitcroft |
bug |
|
|
added subscriber Ubuntu Stable Release Updates Team |
2016-07-29 15:46:10 |
Andy Whitcroft |
removed subscriber Ubuntu Sponsors Team |
|
|
|
2016-07-29 18:14:15 |
Richard Laager |
attachment added |
|
zfs-fix-filenames.debdiff https://bugs.launchpad.net/ubuntu/+source/zfs-linux/+bug/1574342/+attachment/4709820/+files/zfs-fix-filenames.debdiff |
|
2016-07-29 18:54:33 |
Eric Desrochers |
bug watch added |
|
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=832938 |
|
2016-07-30 20:09:15 |
Launchpad Janitor |
zfs-linux (Ubuntu Yakkety): status |
In Progress |
Fix Released |
|
2016-08-01 13:14:09 |
Eric Desrochers |
tags |
patch sts |
patch sts verification-done |
|
2016-08-08 16:49:09 |
Mark Thomas |
bug |
|
|
added subscriber Mark Thomas |
2016-08-17 12:33:03 |
Launchpad Janitor |
zfs-linux (Ubuntu Xenial): status |
Fix Committed |
Fix Released |
|
2016-08-17 12:33:18 |
Chris J Arges |
removed subscriber Ubuntu Stable Release Updates Team |
|
|
|
2016-12-02 19:52:48 |
Mathew Hodson |
bug watch removed |
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=832938 |
|
|