On Tue, Sep 06, 2011 at 10:05:54PM -0700, Richard Elling wrote:
> On Sep 6, 2011, at 9:01 PM, Freddie Cash wrote:
> > For example, does 'zfs send -D' use the same DDT as the pool?
> No.

My understanding was that 'zfs send -D' would use the pool's DDT in 
building its own, if present. If blocks were known by the filesystem
to be duplicate, it would use that knowledge to skip some work seeding
its own ddt and stream back-references. This doesn't change the stream
contents vs what it would have generated without these hints, so "No"
still works as a short answer :) 

That understanding was based on discussions and blog posts at the
time, not looking at code. At least in theory, it should help avoid
reading and checksumming extra data blocks if this knowledge can be
used, so less work regardless of measurable impact on send throughput.
(It's more about diminished impact to other concurrent activities)

The point has mostly been moot in practice, though, because I've found
"zfs send -D" just plain doesn't work and often generates invalid
streams, as you note. Good to know there are fixes.


Attachment: pgpjZ1t9mVCs0.pgp
Description: PGP signature

zfs-discuss mailing list

Reply via email to