Bcachefs Brings Self-Healing Work & Better Reflink Repair For Linux 6.13

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • gotar
    replied
    Originally posted by intelfx View Post
    [extent tree v2] It's going.
    Any commits backing this statement up? Last time I've checked it was stalled (for years). I'd be really glad if these issues were about to be addressed, as I do got some btrfs volumes in active use, some of them I cannot easily convert experiencing troubles.

    Why is this even a counterargument to the "btrfs is not a meme" statement, how does absence of "extent v2" (assuming extent tree v2) makes btrfs "a meme"?
    Because it is deficient by design. The on-disk format went public too soon and it's the source of many intrinsic problems.
    They did implement some optional trees as an optimization technique (free space, block group), but in the meantime XFS gained refcount btrees and so the reflinks, reducing need for btrfs-likes in certain scenarios.

    In btrfs, advanced defragmentation and deduplication algorithms are supposed to be implemented in userspace.
    Yeah, I'm talking about the userspace, which is not even close to being "advanced". The kernel-part "advanced" RAID-1 reading technique for many years (in times of no 3-way mirroring) was "even/odd PID reads even/odd slice", userspace didn't progress a bit since then.

    [no reliable quota] ​From which ass did you pull this?

    From public discussions on linux-btrfs@, provoked by issues spotted in production.
    That can easily be reproduced, so just go ahead and share your results, before you throw insults next time.
    I can trash entire volume in a matter of hours, therefore I choose carefully which volumes might be handled and can benefit from btrfs according to usage-patterns and needs, but none of them is exposed publicly or in Internet-facing services.
    This supports my claim about not being general-purpose fs, as I don't have to think about any of my EXT4/XFS servers in the wild. Oh, I still got one reiserfs server waiting to be replaced.

    [missing encryption, checksum-awareness in regard to RAID1]
    What does this even mean?

    It means you're not using filesystems extensively enough to understand trivia.

    But let me explain: checksummed-filesystem-level RAID1 has an advantage, that when discrepancy in data is found, it can automatically read the other copy.
    Without encryption baked into filesystem, one has to encrypt all the data twice (or more - one time per each mirror) and put already encrypted volumes into btrfs RAID1.
    Considering that crypto-authentication is checksumming itself, this is both redundant and inefficient.

    Assuming we want to encrypt only once and still fail over detected errors, this is more performant:

    dm-integrity - RAID1+ - dm-crypt - fs (whatever, can be one-way btrfs, can be ext3).

    but other issues emerge, namely initialization of empty space (that needs to be encrypted) or support for discard. Both of them are relevant if the stack lays on top of thinly provisioned device, e.g.

    LVM-thin -> integritysetup -> mdadm -> LUKS -> fs

    because now we're basically wasting space, unless we enable discards (not enabled by default at LUKS, security considerations).
    But if we do TRIM and already have thin snapshots, this stack simply outperforms btrfs.

    I do have some btrfs RAID1 over LUKS and this is PITA - I have to unlock all the components separately, before partially-activated btrfs goes into degraded mode.
    In headless machines this is simply not reliable enough to be production ready.

    This is why it's important to have encryption layer above RAID above checksumming.

    This is why bcachefs providing encryption is such a deal.


    Some stats from my fresh server, having clean setup (no legacy volumes):

    Code:
    $ lsblk | grep btrfs | wc -l
    4
    $ lsblk | grep xfs | wc -l
    2
    $ lsblk | grep ext4 | wc -l
    25
    $ lsblk | grep lvm | wc -l
    139
    $ lsblk | grep crypt | wc -l
    32
    $ lsblk | grep raid1 | wc -l
    22
    There would be two more btrfses if it had encryption (both will be XFS/LUKS/MD/integrity/LVM).

    And let's not forget - comparing to btrfs which lacks per-subvolume profiles, the more similar setup is also much simpler one:
    integrity -> RAID1 -> LVM -> LUKS or
    integrity -> RAID1 -> LUKS -> LVM (if everything is to be encrypted and can use common key).


    If the bcachefs was ready today, having reflinks, encryption, multidevice, checksumming, CoW and snapshots - it covers 95% of my needs.
    The remaining are send/receive, which eventually will happen.
    Last edited by gotar; 18 November 2024, 12:37 PM. Reason: my stats

    Leave a comment:


  • muncrief
    replied
    Originally posted by Quackdoc View Post

    Personally I am using bcachefs for data that I really care about, but don't care about having 24/7 accsess to, I am also using it on all of my laptops/tablets because I don't really need super reliability out of them either anymore. It's been quite nice, I have had a few times where I boot up a device or mount it and nothing works, but I never once actually lost any data, nor felt like I did, bcachefs has been extremely impressive in this regard.
    That's good to hear Quackdoc. I understand that any file system is complex, and COW file systems are among the most so. Hopefully bcachefs will continue to progress and in a few years or so attain the reliability of its competitors. As even though I'm not a fan of its mercurial author, that doesn't bias me against his work. And if it results in a better, faster, and more reliable file system it will greatly contribute to the progress of Linux.

    Leave a comment:


  • Quackdoc
    replied
    Originally posted by muncrief View Post

    I found btrfs to be incredibly slow, and bcachefs far to immature to be relied upon.

    So I run CachyOS as it provides integrated OpenZFS support as well as optimized kernels and packages. It's the most feature complete and error free distro I've used in the decades I've been running Linux.
    Personally I am using bcachefs for data that I really care about, but don't care about having 24/7 accsess to, I am also using it on all of my laptops/tablets because I don't really need super reliability out of them either anymore. It's been quite nice, I have had a few times where I boot up a device or mount it and nothing works, but I never once actually lost any data, nor felt like I did, bcachefs has been extremely impressive in this regard.

    Leave a comment:


  • mdedetrich
    replied
    Originally posted by Daktyl198 View Post
    Yeah idk guys... all these people defending it with their lives but there's just something about a filesystem that's been in development for 9 years and still can't remove the "experimental" label and which no other experienced filesystem developers are willing to touch with a 100ft pole that just does not inspire confidence in me.
    Sorry to break it to you, but good filesystems that are actually hardy and resilient actually require a decade to develop. So in other words, it being experimental this long is a good thing, because just as Kent has stated he will not remove that label until its bcachefs is battle hardened and tested in every way possible.

    This is much better than what happened with btrfs, which was premeturely put into the kernel without proper testing where it has earned its meme worthy status.

    Leave a comment:


  • muncrief
    replied
    Originally posted by Quackdoc View Post

    A) Bcachefs is the most interesting file system from a news point of view. ZFS will never get upstream, btrfs will never not be a meme, XFS is old and lacks many features etc. Bcachefs is the only legitimately interesting filesystem, and one of the few actually interesting and relevant bits of news for a larger audience

    B) it always gets good engagement
    I found btrfs to be incredibly slow, and bcachefs far to immature to be relied upon.

    So I run CachyOS as it provides integrated OpenZFS support as well as optimized kernels and packages. It's the most feature complete and error free distro I've used in the decades I've been running Linux.

    Leave a comment:


  • Daktyl198
    replied
    Yeah idk guys... all these people defending it with their lives but there's just something about a filesystem that's been in development for 9 years and still can't remove the "experimental" label and which no other experienced filesystem developers are willing to touch with a 100ft pole that just does not inspire confidence in me.

    If this was a video game, it'd be up there with Star Citizen and AoC for meme status at this point. Sticking with the video game analogy... don't pre-order at all, let alone based on what the developer tells you will be in the game sometime in the future. Learn your lesson from the launch of No Mans Sky. Wait until full release and read reviews, if full release ever happens

    Leave a comment:


  • intelfx
    replied
    Originally posted by gotar View Post
    How is extent v2 development going?
    It's going. Why is this even a counterargument to the "btrfs is not a meme" statement, how does absence of "extent v2" (assuming extent tree v2) makes btrfs "a meme"?

    Originally posted by gotar View Post
    Is duplicate-aware defragmentation ready? No?
    "Ready" implies it was a goal. It wasn't. In btrfs, advanced defragmentation and deduplication algorithms are supposed to be implemented in userspace.

    Originally posted by gotar View Post
    So - no reliable quota
    From which ass did you pull this?

    Originally posted by gotar View Post
    huge space usage
    ditto

    Originally posted by gotar View Post
    not suitable for databases (including these in $HOME)
    Wow, I guess all of my machines that I use on a daily basis are supposed to disappear in a puff of logic.

    Originally posted by gotar View Post
    no encryption (checksum-awareness in regard to RAID1+)
    What does this even mean?

    Originally posted by gotar View Post
    One cannot set data-profile nor compression-level per file/directory, cannot change superblock parameters per subvolume either. Subvolume management is hell (try to swap one holding nested subvolumes).
    This is the only statement in your comment which is actually true.

    Originally posted by gotar View Post
    But in it's full potential - it's not general-purpose snapshotting FS.
    It most definitely is.
    Last edited by intelfx; 17 November 2024, 01:36 PM.

    Leave a comment:


  • skeevy420
    replied
    Originally posted by andresdju View Post

    Admit that you posted just to promote the game of Go.
    KSudoku is my boredom filler

    Leave a comment:


  • skeevy420
    replied
    Originally posted by pokeballs View Post

    You need to lower font hinting.
    I tried and it doesn't help, but thanks for the suggestion. I even logged off and back on between every change to hopefully be thorough. Turning off AA makes general rendering even worse and doesn't fix the odd shapes or wavyness either.

    Leave a comment:


  • gotar
    replied
    Originally posted by Daktyl198 View Post
    ... what? btrfs stopped being a meme years ago.
    How is extent v2 development going? Is duplicate-aware defragmentation ready? No?

    So - no reliable quota, huge space usage, not suitable for databases (including these in $HOME), no encryption (checksum-awareness in regard to RAID1+).
    One cannot set data-profile nor compression-level per file/directory, cannot change superblock parameters per subvolume either.
    Subvolume management is hell (try to swap one holding nested subvolumes).

    Let's be honest - btrfs is niche filesystem suitable for mostly-static or rarely-changing data, like various archives (thanks to bit-rot protection) or VM images (including docker-like stacking or immutable OS-es).
    It competes XFS where one needs more than reflinks themself (unfortunately not supported by ext4) and doesn't hold databases on it.

    But in it's full potential - it's not general-purpose snapshotting FS.
    I.e. it can be general-purpose if you don't keep snapshots, but then - what's the point of using it?

    Leave a comment:

Working...
X