3 ms·
> btrfs don't allow nodatacow with snapshots . Uhh. "You can't do overwrite-in-place if you want to keep a snapshot copy of the old data" simply makes sense, a
by yencabulator 3y ago
> btrfs don't allow nodatacow with snapshots .
Uhh. "You can't do overwrite-in-place if you want to keep a snapshot copy of the old data" simply makes sense, and you'll find every overwrite-in-place design that supports snapshots will take a write performance hit around the time the snapshot; either the snapshot has to atomically copy the whole data, or the first write after a snapshot can't be overwrite-in-place (or it has to make a separate copy of the original data for the snapshot; similar but worse).
- Dylan16807 3y agoProper CoW means that every change to a block has to cause copies, not just the first write after a snapshot. That makes a big difference. And "move the snapshotted data out of the way upon writing" is going to give you better performance in a lot of cases.
- yencabulator 3y agoI was replying to this part: > btrfs don't allow nodatacow with snapshots. You can absolutely mix chattr +C with snapshots. It's CoW-when-needed in the face of snapshots, just like everything has to be in order to support snapshots.
- Dylan16807 3y agoSo they were just wrong in saying it's not supported? You didn't make that clear. And yes I can find many sources saying it's supported.