Data missing after ZFS replication on FreeNAS/TrueNAS

In order to use the new encryption method in TrueNAS 12 I copied all data from a legacy encrypted FreeNAS pool to a newly formatted pool via a replication task.

After replication there seems to be almost a GiB missing on the target pool:

Source pool after replication: 8.06 TiB used, 733.91 GiB available

Target pool after replication: 7.24 TiB used, 1.56 TiB available

For replication I used these settings (basic mode):

  • source/target “On this System”
  • left “Recursive” and “Replicate Custom Snapshots” unchecked (because I didn’t use snapshots)
  • left “Encryption” unchecked
  • Replication Schedule: Run Once
  • unchecked “Make Destiation Dataset Read-only”
  • Destination Snapshot Life Time: Same as Source

To find out what is missing a diff would take too long.

I tried rsync -avun --delete $TARGET $SOURCE | grep "^deleting " but there was no output.

What else could I do to check for the missing files on the target in reasonable time? Is there something ZFS-related that might take up space and hasn’t been copied over by the replication task? What could that be?


The difference can be related to different pool or dataset configuration (mirror vs raidz, ashift value, recordsize, compression, etc). If you sent data via send/recv, no data should be lost ever. This seems confirmed by the output of your rsync command.

If you can, please show the output of the following commands on both source and destination (feel free to redact the output as required):

zpool status
zpool get all
zfs get all