In a saga that brings to mind the hype and incidents with ReiserFS, [SavvyNik] takes us through the latest data corruption bug report and developer updates regarding the BcacheFS filesystem in the Linux kernel. Based on the bcache (block cache) cache mechanism in the Linux kernel, its author [Kent Overstreet] developed it into what is now known as BcacheFS, with it being announced in 2015 and subsequently merged into the Linux kernel (6.7) in early 2024. As a modern copy-on-write (COW) filesystem along the lines of ZFS and btfs, it was supposed to compete directly with these filesystems.

Despite this, it has become clear that BcacheFS is rather unstable, with frequent and extensive patches being submitted to the point where [Linus Torvalds] in August of last year pushed back against it, as well as expressing regret for merging BcacheFS into mainline Linux. As covered in the video, [Kent] has pushed users reporting issues to upgrade to the latest Linux kernel to get critical fixes, which really reinforces the notion that BcacheFS is at best an experimental Alpha-level filesystem implementation and should probably not be used with important data or systems.

Although one can speculate on the reasons for BcacheFS spiraling out of control like this, ultimately if you want a reliable COW filesystem in Linux, you are best off using btrfs or ZFS. Of course, regardless of which filesystem you use, always make multiple backups, test them regularly and stay away from shiny new things on production systems.


From Blog – Hackaday via this RSS feed

1 comment

sorted by: hot top controversial new old
[–] 1 point 1 year ago* (last edited 1 year ago)

really reinforces the notion that BcacheFS is at best an experimental Alpha-level filesystem implementation and should probably not be used with important data or systems.

Yes, that's why it's hidden behind an expérimental flag, and the developer himself says it's not quite ready yet to remove the flag.

So I don't understand what's so controversial about this.

The only controversy I'm aware of is Linus rejecting somes patches because they were submitted late in the release cycle, and the develeper didn't follow the proper review and testing process. This is more of a process/human relation issue, and seems to be resolved as Linus is accepting his patches again.

  • source
  • 10 comments in c/linux@programming.dev view that post
    [–] 31 points 1 year ago (7 children)

    Correct me if I'm wrong, but everybody considers bcachefs to still be in alpha.

    Only a complete idiot would use an alpha stage filesystem in production and then whine about bugs and data corruption.

    I think this post smells of clickbait.

  • source
  • hideshow 7 child comments
  • [–] 9 points 1 year ago (1 child)

    BcacheFS seems to have been released around ~2019 and it's still alpha?

    One thing you don't want to fuck around with is your file system. It's one area of computing where conservatism is paramount.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 9 points 1 year ago*

    I think a filesystem is the kind of thing I'd expect to stay in alpha or beta a really long time 😅 I'm not the most technical linux user thought so maybe that is a long time, I dunno

    But like Wayland took ages to be usable. I wonder how long btrfs took to get out of unusable early stages...

    Edit: I didn't see that the dev had said its production ready.... I don't really buy that lol 😅

  • source
  • parent
  • [–] 8 points 1 year ago (3 children)

    The lead developer certainly doesn't. He maintains that it's got several systems in production.

  • source
  • parent
  • hideshow 3 child comments
  • [–] 6 points 1 year ago (2 children)

    Oh, wow look at that. Last time I checked it was still ~"for testing purposes only, do not use in production".

  • source
  • parent
  • hideshow 2 child comments
  • [–] 3 points 1 year ago (1 child)

    Is this the same as BtrFS?

  • source
  • hideshow 1 child comment