Thanks cyberjock.
Concerning zfs recv, I don't see a -D option (9.2.1.7)! I was wondering about this too, as I expected to see one, but it's not in the command output...
Code:
# zfs recv
missing snapshot argument
usage:
receive|recv [-vnFu] <filesystem|volume|snapshot>
receive|recv [-vnFu] [-d | -e] <filesystem>
For the property list, run: zfs set|get
For the delegated permission list, run: zfs allow|unallow
I did realize that my remote pull server has a different (older) version of freenas than my master, so I'm fixing that right now and re-running replication. Hopefully that resolves things.
Btw, I wouldn't normally care too much about deduping the replication stream, but in this case I've got a particular set of constraints:
a) A dataset with a usage pattern that causes a lot of duplicate data, every single day. Mind you, by "a lot" i mean only 50GB-100GB, to start, and maybe 500MB per day. So based on my readings and examination of zdb output, I'm not terribly worried about the DDT chewing through a ton of ram in this case like I would be with a multi-TB setup. I achieve 15X ratio on this dataset with dedup over compression alone.
Actually, the fact that I'm using dedup on the dataset is somewhat irrelevant to the main question, since it's completely separate from deduped replication streams, but I already typed this so I'll leave it here :)
b) As you alluded to, I have an ISP that caps my monthly transfer and starts complaining when I exceed it. This is where the deduped streams come in. I replicate offset nightly, and if I can use a deduped stream, particularly with this dataset, I can potentially transfer say 50MB nightly instead of 500MB nightly (not exact, but you get the idea -- sometimes the disparity is much more, sometimes less). Across a month of nightly transfers, this can make a pretty big difference.
Since the duplicate data is on the file level, I could tackle this on the application side and set things up to work with hard links via rsync or the like. I've done this many times before, but man it'd be nice if it was transparent and I didn't have to deal with that.