undoing zfs deduplication

Nikolay Denev ndenev at gmail.com
Wed Aug 8 15:55:15 UTC 2012


On Aug 8, 2012, at 6:27 PM, Brian Gold <bgold at simons-rock.edu> wrote:

> I've got a system running 9.0-release w/ a zfs v28 pool. Within that pool I have 3 datasets, two of which have deduplication
> enabled. I've recently been having a lot of performance issues with deduplication and have determined that I need far more ram that
> I currently have in order to support dedupe. I don't have the budget for the ram necessary so I would like to move away from
> deduplication. I'm aware  that you can't simply turn dedupe off, you need to completely nuke the filesystem. 
> 
> What I'm wondering is, would it be possible for me to create new datasets within the same pool (I have a ton of available space) and
> use a combination of "zfs send" & "zfs receive" to migrate my deduped datasets and all of their snapshots (daily, weekly, & monthly)
> over to the new dataset? 
> 
> Brian Gold
> System Administrator
> Bard College at Simon's Rock
> 
> 
> 
> _______________________________________________
> freebsd-fs at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-fs
> To unsubscribe, send any mail to "freebsd-fs-unsubscribe at freebsd.org"

I believe simply disabling dedup should be enough.
Some blocks still will be just a "reference" to the original block because of the previously enabled deduplication, but this won't use additional memory.
New files will be written without being deduped.
If you want to de-dedup the files you can probably just "rsync $source $source.tmp && mv $source.tmp $source" in a loop to rewrite them.


More information about the freebsd-fs mailing list