Ditto for ZFS btw.
Ditto for ZFS btw.
This is untrue. ZFS is ready for prime time. The problem here is that it is licensed under a license that is not compatible with the GPL, so it will never be imported into the kernel. Because it's an external module, most distros dont offer it in their installer etc.
If you want zfs, you can either install it during install in expert mode, or go BSD where it is a first class FS
Plus, my understanding is that Linus Torvalds has a dislike of ZFS because it came from Sun Microsystems.
> And honestly, there is no way I can merge any of the ZFS efforts until I get an official letter from Oracle that is signed by their main legal counsel or preferably by Larry Ellison himself that says that yes, it's ok to do so and treat the end result as GPL'd.
> Other people think it can be ok to merge ZFS code into the kernel and that the module interface makes it ok, and that's their decision. But considering Oracle's litigious nature, and the questions over licensing, there's no way I can feel safe in ever doing so.
> And I'm not at all interested in some "ZFS shim layer" thing either that some people seem to think would isolate the two projects. That adds no value to our side, and given Oracle's interface copyright suits (see Java), I don't think it's any real licensing win either.
> Don't use ZFS. It's that simple. It was always more of a buzzword than anything else, I feel, and the licensing issues just make it a non-starter for me.
[0] https://engineering.fb.com/2018/10/30/open-source/linux/
I don't remember hearing about any power failures --- either UPS and transfer switches all worked 100%, node replacement covered any issues 100%, or I just wasn't in the loop. This isn't common at home; most people have at least a few brief power blips every once in a while, and those with many often get a UPS, but home grade UPSes often fail. I'd expect at least one unexpected power failure per 3 years in a home environment.
Most of FB production is built from ephemeral containers. If a container host crashes and restarts and the filesystem is corrupt, the container would be rescheduled somewhere else, and the host would be sent for repair (reimaging) automagically, and a product team like mine would not really know unless they really looked, maybe just that the container moved. That's not realistic for home users.
The containers themselves were short lived for many reasons. I'd estimate most of them lived for less than a month. A home user distro install often lasts much longer.
That said, I don't remember seeing disk corruption, but I do remember a series of issues where we couldn't write to disk because it was full, with disk usage of maybe 60%. As I recall, there was only one couple week period where that happened. This was resolved in the moment by replacing affected containers with new ones on other hosts, and permanently by a fix in the host kernels; broken filesystems were not fixed, they were abandoned. This isn't great for home users either.
There was a separate class of operations for persistent data storage; although there was work to containerize that as well, I had little visibility. Persistent storage machines were different and I don't know if they used btrfs or not.
This all doesn't mean it's not a good filesystem for home users, just that Facebook's endorsement doesn't transfer as the use case is much different.
also, there does not seem to be a proper guide to btrfs. only random of bits and bytes here and there.
zfs on the other hand is very well documented.
Not sure I agree. On ZFS I have to worry about an out of tree kernel module and all the implications of that, extra things like setting the correct ashift, making sure the recordsize is tuned individually in datasets to not destroy performance for specific worksets, ensuring ARC doesn't cause OOM behavior with applications which allocate a lot of memory at once (since it doesn't use the page cache), etc etc.
With BTRFS however off the top of my head the only thing I remember doing was making sure nodatacow was set for subvolumes containing databases and VM disks.
You are absolutely correct about the ZFS ecosystem containing superior tooling however.
that said, lots of people do. arch and gentoo default install instructions suggest it just fine, telling you the pros and cons over ext4