From: Duncan <1i5t5.duncan@cox.net>
To: linux-btrfs@vger.kernel.org
Subject: Re: btrfs send reproducibly fails for a specific subvolume after sending 15 GiB, scrub reports no errors
Date: Tue, 24 Nov 2015 05:42:11 +0000 (UTC) [thread overview]
Message-ID: <pan$7e9cd$79273243$6e85efe7$7ee378ef@cox.net> (raw)
In-Reply-To: 20151123211012.GA12286@ny.voidptr.de
Nils Steinger posted on Mon, 23 Nov 2015 22:10:12 +0100 as excerpted:
> Do we anything about what might cause a filesystem to enter a state
> which `send` chokes on?
> I've only seen a small sample of the corrupted files before growing
> tired of the process and just recreating the whole thing, but all of
> them were database files (presumably SQLite). Could it be that the files
> were being written to during an unclean shutdown, leading to some kind
> of corruption of the FS? Unfortunately, I was a little triggerhappy when
> cleaning up old snapshots, so there aren't any left to aid in
> troubleshooting this problem further…
Austin's the one attempting to trace down the problem, so he'd have the
most direct answer there. (My use-case doesn't involve snapshotting or
send/receive at all.)
But if any type of files would be likely to create issues, it'd be
something like database or VM image files, since the random-file-rewrite-
pattern they typically have is in general the most problematic for copy-
on-write (COW) filesystems such as btrfs. Without some sort of
additional fragmentation management (like the autodefrag mount option),
these files will end up _highly_ fragmented on btrfs, often thousands of
fragments, tens of thousands when the files in question are multi-gig.
For the typically smallish sqlite database files, autodefrag can help
with the fragmentation such a rewrite pattern generally triggers with
COW, and it'd be recommended in general if all such files on the
filesystem are smallish (quarter to a half gig or smaller), but if you're
running large VM images, etc, autodefrag doesn't scale so well to them,
and much more complex fragmentation management will be needed. But
that'd be for a different post as I don't yet know if it applies here,
and I'm trying to keep this one short.
--
Duncan - List replies preferred. No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master." Richard Stallman
next prev parent reply other threads:[~2015-11-24 5:42 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-22 21:59 btrfs send reproducibly fails for a specific subvolume after sending 15 GiB, scrub reports no errors Nils Steinger
2015-11-23 5:49 ` Duncan
2015-11-23 12:26 ` Austin S Hemmelgarn
2015-11-23 21:10 ` Nils Steinger
2015-11-24 5:42 ` Duncan [this message]
2015-11-24 12:46 ` Austin S Hemmelgarn
2015-11-24 18:48 ` Christoph Anton Mitterer
2015-11-24 20:44 ` Austin S Hemmelgarn
2015-11-24 20:50 ` Christoph Anton Mitterer
2015-11-24 20:58 ` Austin S Hemmelgarn
2015-11-24 21:17 ` Christoph Anton Mitterer
2015-11-24 21:27 ` Hugo Mills
2015-11-24 21:36 ` Christoph Anton Mitterer
2015-11-24 22:08 ` Hugo Mills
2015-11-26 15:44 ` Duncan
2015-11-24 21:11 ` Filipe Manana
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='pan$7e9cd$79273243$6e85efe7$7ee378ef@cox.net' \
--to=1i5t5.duncan@cox.net \
--cc=linux-btrfs@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox