Btrfs/ZFS/bcachefs under workloads classic benchmarks skip
Thread
Unofficial Hacker News client; not affiliated with Y Combinator.
Btrfs/ZFS/bcachefs under workloads classic benchmarks skip
Unofficial Hacker News client; not affiliated with Y Combinator.
lproven · · focus · HN ↗
But the reasons I choose filesystems are more about reliability, failure modes, surrounding tooling, and so on.
Btrfs fails in several critical areas:
1. No way to accurately find free space
2. catastrophic failure on write if a volume fills up, the probability of which is greater because of #1
3. repair tools usually do not recover a corrupted volume and in my testing are most likely to render as damaged volume completely unreadable, which makes #2 worse
Put these things together and I can never trust Btrfs again. In the 9 years since I encountered these, I see no effort to fix them, just fooling around witg unimportant side details like performance tweaks.
Fix the critical issues first then make it faster.
raegis · · focus · HN ↗
lproven · · focus · HN ↗
<a href="https://arstechnica.com/gadgets/2021/09/examining-btrfs-linuxs-perpetually-half-finished-filesystem/" rel="nofollow">https://arstechnica.com/gadgets/2021/09/examining-btrfs-linu...
<- 5Y ago.
It's not materially better now. The devs are in denial about the problems because lots of big users are saying "works fine on my machine."
Sure, if you have lots of backups, if you have huge volumes on huge disks and they never fill up...
But it's the default in Fedora, Spiral Linux, Garuda Linux, siduction and others. Personal distros for people's own PCs and those are not well-supported enterprise kit.
chasil · · focus · HN ↗
Don't ever let it fill up!
lproven · · focus · HN ↗
SUSE takes snapshots before packages are installed. The package manager cannot tell if the disk will fill up as a result because on Btrfs the `df` command lies.
If its Btrfs root fills up and the OS writes to it, it 100% will self-destruct, and the `btrfs-repair` tool (`fsck` replacement) cannot fix drives and usually makes the corruption worse and renders the drive unreadable.
This is why in the earlier thread about swapfiles...
<a href="https://news.ycombinator.com/item?id=49618087">https://news.ycombinator.com/item?id=49618087
... I advised 2 commenters not to recommend keeping the OS and data in a single big volume. I got downvoted for it. I was rude. Well, I was, but I stand by my comments even though I'm sorry for my tone when I made them.
chasil · · focus · HN ↗
A pragmatic fix would trigger read-only failure mode at 90% usage of the mount as a whole, with all subvolumes.
lproven · · focus · HN ↗
And you know what, that's a great idea.
chasil · · focus · HN ↗
I have a loopback mount on an fallocate file with a btrfs filesystem inside of it at work. I'm using send/receive to make sure there is hope of recovery.
I wrote this several years ago.
<a href="https://www.linuxjournal.com/content/btrfs-centos-living-loopback" rel="nofollow">https://www.linuxjournal.com/content/btrfs-centos-living-loo...
lproven · · focus · HN ↗