The nice feller over at phoronix brings us this handy to have bit of info:
It turns out the RAID5 and RAID6 code for the Btrfs file-system's built-in RAID support is faulty and users should not be making use of it if you care about your data.
There has been this mailing list thread since the end of July about Btrfs scrub recalculating the wrong parity in RAID5. The wrong parity and unrecoverable errors has been confirmed by multiple parties. The Btrfs RAID 5/6 code has been called as much as fatally flawed -- "more or less fatally flawed, and a full scrap and rewrite to an entirely different raid56 mode on-disk format may be necessary to fix it. And what's even clearer is that people /really/ shouldn't be using raid56 mode for anything but testing with throw-away data, at this point. Anything else is simply irresponsible."
Just as well I haven't gotten around to trying it then.
(Score: 2) by Marand on Sunday August 07 2016, @11:10PM
Apart from the nutters that insist upon using draconian licensing schemes to control developer behavior, was there every really any point to the filesystem?
It started inside Oracle, so the reasoning was probably as simple as "Oracle wanted ZFS but Sun has it." No idea why they didn't just abandon ship as soon as they bought Sun, though; maybe a passionate dev in the company convinced someone to keep working on it fort he future or something.
The appeal for others was either "ZFS licensing isn't compatible with the Linux kernel but we want ZFS features" or "we want stuff that ext[2|3|4] doesn't have", but it's apparently not been enough. It may well be a good long term goal, and if that's what someone wants to work on good for them, but it still isn't ready for everyday use and I'm amazed people actually suggest it for such. :/
I've got nothing against developing new filesystems, and I don't think it's a problem that the kernel supports a bunch of niche ones, because use cases are different and sometimes a good specialised FS isn't suitable for general use (or vice-versa). The problem here with btrs is that filesystems are too damn important to put into production use when still immature, and for whatever reason people seem to think it's production-ready when it's clearly not.