I've move a zfs filesystem from a pool made of a bunch or mirror vdevs to another pool made of two raidz1s with the following command

# zfs send -R pool/project@moving | zfs recv tank/project

As far as I understood the manpage, '-R' moves all the metadata as well, including the compression algorithm etc., which is exactly what I see:

# zfs get compression pool/project
pool/project    compression  lz4       local
# zfs get compression tank/project
tank/project    compression  lz4       received

So why is the the filesystem on the target pool (tank) over 20% bigger than on the source pool (pool). It's a diference of almost 6TB and I'm curious, where I lost that.

  • Show the filesystem sizes, please... zfs list – ewwhite Jul 21 '14 at 11:30
  • Oh, you're right, 'zfs list' show actually the same size. But why does 'zpool list' show this: # zpool list NAME SIZE ALLOC FREE EXPANDSZ CAP DEDUP HEALTH ALTROOT pool 36.2T 27.9T 8.33T - 77% 1.00x ONLINE - tank 36.2T 34.7T 1.57T - 95% 1.00x ONLINE - – Clayton Louden Jul 21 '14 at 11:57
  • Curious. Why are you moving to RAIDZ? – ewwhite Jul 21 '14 at 12:44

ZFS mirrors are usually much better than RAIDZ(1/2/3) for a variety of reasons (performance, expansion, sanity). This confusion about displayed size is one of them.

Please see: Why is my RAIDZ2 pool larger than the expected size calculation?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.