]> git.proxmox.com Git - mirror_zfs.git/commit
Skip FREEOBJECTS for objects which can't exist
authorFabian Grünbichler <f.gruenbichler@proxmox.com>
Tue, 26 Sep 2017 12:03:21 +0000 (14:03 +0200)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Tue, 10 Oct 2017 22:35:49 +0000 (15:35 -0700)
commit829e95c4dc74d7d6d31d01af9c39e03752499b15
tree96d8c80403ff159c6e383f24771ce94880449baf
parent48fbb9ddbf2281911560dfbc2821aa8b74127315
Skip FREEOBJECTS for objects which can't exist

When sending an incremental stream based on a snapshot, the receiving
side must have the same base snapshot.  Thus we do not need to send
FREEOBJECTS records for any objects past the maximum one which exists
locally.

This allows us to send incremental streams (again) to older ZFS
implementations (e.g. ZoL < 0.7) which actually try to free all objects
in a FREEOBJECTS record, instead of bailing out early.

Reviewed by: Paul Dagnelie <pcd@delphix.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Closes #5699
Closes #6507
Closes #6616
module/zfs/dmu_send.c