This v1.10.0 release contains some fixes and a lot of new features, including …
- Improved compat with rsync,net
- Added daemon support for periodic activities every N milliseconds, including for taking snapshots, replicating and pruning.
- Added the bzfs_jobrunner companion program, which is a convenience wrapper around
bzfs
that simplifies periodically creating ZFS snapshots, replicating and pruning, across source host and multiple destination hosts, using a single shared jobconfig script. - Added
--create-src-snapshots-*
CLI options for efficiently creating periodic (and adhoc) atomic snapshots of datasets, including recursive snapshots. - Added
--delete-dst-snapshots-except-plan
CLI option to specify retention periods like sanoid, and prune snapshots accordingly. - Added
--delete-dst-snapshots-except
CLI flag to specify which snapshots to retain instead of which snapshots to delete. - Added
--include-snapshot-plan
CLI option to specify which periods to replicate. - Added
--new-snapshot-filter-group
CLI option, which starts a new snapshot filter group containing separate--{include|exclude}-snapshot-*
filter options, which are UNIONized. - Added
anytime
andnotime
keywords to--include-snapshot-times-and-ranks
. - Added
all except
keyword to--include-snapshot-times-and-ranks
, as a more user-friendly filter syntax to say “include all snapshots except the oldest N (or latest N) snapshots”. - Log pv transfer stats even for tiny snapshots.
- Perf: Delete bookmarks in parallel.
- Perf: Use CPU cores more efficiently when creating snapshots (in parallel) and when deleting bookmarks (in parallel) and on
--delete-empty-dst-datasets
(in parallel) - Perf/latency: no need to set up a dedicated TCP connection if no parallel replication is possible.
- For more clarity, renamed
--force-hard
to--force-destroy-dependents
.--force-hard
will continue to work as-is for now, in deprecated status, but the old name will be completely removed in a future release. - Use case-sensitive sort order instead of case-insensitive sort order throughout.
- Use hostname without domain name within
--exclude-dataset-property
. - For better replication performance, changed the default of
bzfs_no_force_convert_I_to_i
formfalse
totrue
. - Fixed “Too many arguments” error when deleting thousands of snapshots in the same ‘zfs destroy’ CLI invocation.
- Make ‘zfs rollback’ work even if the previous ‘zfs receive -s’ was interrupted.
- Skip partial or bad ‘pv’ log file lines when calculating stats.