mirror_zfs/cmd
Matthew Ahrens fc6700425a Deprecate deduplicated send streams
Dedup send can only deduplicate over the set of blocks in the send
command being invoked, and it does not take advantage of the dedup table
to do so. This is a very common misconception among not only users, but
developers, and makes the feature seem more useful than it is. As a
result, many users are using the feature but not getting any benefit
from it.

Dedup send requires a nontrivial expenditure of memory and CPU to
operate, especially if the dataset(s) being sent is (are) not already
using a dedup-strength checksum.

Dedup send adds developer burden. It expands the test matrix when
developing new features, causing bugs in released code, and delaying
development efforts by forcing more testing to be done.

As a result, we are deprecating the use of `zfs send -D` and receiving
of such streams.  This change adds a warning to the man page, and also
prints the warning whenever dedup send or receive are used.

In a future release, we plan to:
1. remove the kernel code for generating deduplicated streams
2. make `zfs send -D` generate regular, non-deduplicated streams
3. remove the kernel code for receiving deduplicated streams
4. make `zfs receive` of deduplicated streams process them in userland
   to "re-duplicate" them, so that they can still be received.

Reviewed-by: Paul Dagnelie <pcd@delphix.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: George Melikov <mail@gmelikov.ru>
Signed-off-by: Matthew Ahrens <mahrens@delphix.com>
Closes #7887
Closes #10117
2020-05-12 10:53:32 -07:00
..
arc_summary Fix reporting of L2ARC hits/misses in arc_summary3 2020-01-22 13:49:05 -08:00
arcstat Canonicalize Python shebangs 2020-01-22 13:49:00 -08:00
dbufstat Canonicalize Python shebangs 2020-01-22 13:49:00 -08:00
fsck_zfs Fix typos in cmd/ 2020-01-22 13:48:58 -08:00
mount_zfs Refactor libzfs_error_init newlines 2020-01-22 13:49:01 -08:00
raidz_test Support -fsanitize=address with --enable-asan 2018-01-10 10:49:27 -08:00
vdev_id Fix typos in cmd/ 2020-01-22 13:48:58 -08:00
zdb zdb: print block checksums with 6 d's of verbosity 2020-01-22 13:49:07 -08:00
zed Systemd mount generator: Generate noauto units; add control properties 2020-05-12 10:53:32 -07:00
zfs Deprecate deduplicated send streams 2020-05-12 10:53:32 -07:00
zgenhostid Add zgenhostid utility script 2017-07-25 13:22:03 -04:00
zhack Add libzutil for libzfs or libzpool consumers 2018-11-05 11:22:33 -08:00
zinject Refactor libzfs_error_init newlines 2020-01-22 13:49:01 -08:00
zpool Fix zpool history unbounded memory usage 2020-01-22 13:49:03 -08:00
zstreamdump Fix typos in cmd/ 2020-01-22 13:48:58 -08:00
ztest Linux 5.0 compat: SIMD compatibility 2020-01-22 13:49:01 -08:00
zvol_id Fedora 28: Fix misc bounds check compiler warnings 2018-04-04 10:16:47 -07:00
zvol_wait zvol_wait script should ignore partially received zvols 2019-09-25 11:27:51 -07:00
Makefile.am New service that waits on zvol links to be created 2019-09-25 11:27:51 -07:00