Hacker News new | ask | show | jobs
by Dylan16807 1833 days ago
> why anyone uses BTRFs (UnRaid or any other form of software raid that isn't ZFS) is still beyond me.

BTRFS can do after-the-fact deduplication (with much better performance than ZFS dedup) and copy-on-write files. And you can turn snapshots into editable file systems.

2 comments

I've had 3 catastrophic BTRFS failures. In two cases, the root filesystem just ran out of space and there was no way to repair the partition. Last time, the partition was just rendered unmountable after a reboot. All data was lost.No such thing has ever happened with ZFS for me.
A recent Fedora install here came with a new default of BTRFS use rather than ext4. So i'm curious about your experience, were any of those catastrophic failures recent? Do you know of any patches entering the kernel that purport to fix the issues you experienced?
Last one was two years ago. I was told that it was a hardware issue. Same SSD is still going strong with ext4 now.
I've had some annoying failures too. But I wasn't listing pros and cons, I was explaining that there are some very notable features that ZFS lacks.
That's fair. However, when listing notable features for the sake of comparing software, I think it's important to also list other characteristics of a given piece of software. If we were to compare software by feature sets alone, one might argue that Windows has the most features, so Windows must be best OS.
I think cloning a zfs snapshot into a writeable filesystem matches at least the functionality of btrfs writeable snapshots, but I could be ignorant about some use-cases.
Let's say you want to clear out part of a snapshot of /home, but keep the rest.

So you clone it and delete some files. All good so far, but the snapshot is still wasting space and needs to be deleted.

But to make this happen, your clone has to stop being copy-on-write. All the data that exists in both /home and the clone will now be duplicated.

And you could say "plan ahead more", but even if you split up your drive into many filesystems, now you have the problem that you can't move files between these different directories without making extra copies.

To put it in other words, zfs doesn't support rebasing a clone off of a newer snapshot. Otherwise e.g. you could create a clone, snapshot each clone, create two new clones and promote them, and then delete the original snapshot. But what zfs does is re-attach the original snapshot to the promoted clone of the original volume, and it is still the referred base of the other clone.
I’m a beginner in ZFS, but copying the modified clone and then destroying the clone and the snapshot would solve your problem, wouldn’t it?