On Mon, 2017-08-14 at 11:53 -0400, Austin S. Hemmelgarn wrote: > Quite a few applications actually _do_ have some degree of secondary > verification or protection from a crash. Go look at almost any > database > software. Then please give proper references for this!
This is from 2015, where you claimed this already and I looked up all the bigger DBs and they either couldn't do it at all, didn't to it per default, or it required application support (i.e. from the programs using the DB) https://www.spinics.net/lists/linux-btrfs/msg50258.html > It usually will not have checksumming, but it will almost > always have support for a journal, which is enough to cover the > particular data loss scenario we're talking about (unexpected > unclean > shutdown). I don't think we talk about this: We talk about people wanting checksuming to notice e.g. silent data corruption. The crash case is only the corner case about what happens then if data is written correctly but csums not. > In my own experience, the things that use nodatacow fall into one of > 4 > categories: > 1. Cases where the data is non-critical, and data loss will be > inconvenient but not fatal. Systemd journal files are a good example > of > this, as are web browser profiles when you're using profile sync. I'd guess many people would want to have their log files valid and complete. Same for their profiles (especially since people concerned about their integrity might not want to have these synced to Mozilla/Google etc.) > 2. Cases where the upper level can reasonably be expected to have > some > degree of handling, even if it's not correction. VM disk images and > most database applications fall into this category. No. Wrong. Or prove me that I'm wrong ;-) And these two (VMs, DBs) are actually *the* main cases for nodatacow. > And I and most other sysadmins I know would prefer the opposite with > the > addition of a secondary notification method. You can still hook the > notification to stop the application, but you don't have to if you > don't > want to (and in cases 1 and 2 I listed above, you probably don't want > to). Then I guess btrfs is generally not the right thing for such people, as in the CoW case it will also give them EIO on any corruptions and their programs will fail. Cheers, Chris.
smime.p7s
Description: S/MIME cryptographic signature