From: Duncan <1i5t5.duncan@cox.net>
To: linux-btrfs@vger.kernel.org
Subject: Re: how to clone a btrfs filesystem
Date: Sun, 19 Apr 2015 03:56:40 +0000 (UTC) [thread overview]
Message-ID: <pan$b5546$9e29a1d1$1032ca34$a50adf64@cox.net> (raw)
In-Reply-To: 201504190102.42660.russell@coker.com.au
Russell Coker posted on Sun, 19 Apr 2015 01:02:42 +1000 as excerpted:
>> Some additional questions:
>> a) Can btrfs send change anything(!) on the source fs?
>> b) Can one abort (Ctrl-C) a send and/or receive... and make it continue
>> at the same place were it was stopped?
>
> A yes, B I don't know.
More directly on A, btrfs send creates a read-only snapshot and sends it,
so the filesystem isn't changing out from under it as it sends. So
that's what it changes on the source filesystem. AFAIK, nothing else.
For B, my use-case doesn't include send/receive, so I don't know,
directly, either. But due to the way it works, assuming an aborted send/
receive doesn't get automatically cleaned up (I simply don't know that,
and I'm not bothering to look it up, but it should be documented if it
does), it should at minimum be possible to include the aborted version as
a parent or reference on each end, such that if any data was sent in the
aborted send/receive, it shouldn't have to be sent again, only a metadata
reference to it will need to be sent.
> Also I'm not personally inclined to trust send/recv at this time. I
> don't think it's had a lot of testing.
Based on posts from people using it here, as well as watching the
patches, etc, going by, I'd say that given a send/receive that has
completed without error, it should be reliably golden. There continue to
be various corner-case bugs where it doesn't always work, but in that
case it should reliably error on one side or the other.
A very simple example of the type of corner-case that still causes
problems, tho this one should work, it's the much more complex ones that
sometimes don't, is where the original filesystem had /dir/suba/subb/,
but that nesting was reversed to /dir/subb/suba/. That's the general
sort of thing that can still cause problems, altho simple example
shouldn't, but obviously, it can only be a problem on later incrementals
that reference a parent with a tree that has "gone inside out", so to
speak, since the parent send.
But again, if the process works without error on both sides, then the
result should be golden, barring of course a serious regression bug.
--
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-04-19 3:56 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-17 23:08 how to clone a btrfs filesystem Christoph Anton Mitterer
2015-04-18 4:24 ` Russell Coker
2015-04-18 5:17 ` Christoph Anton Mitterer
2015-04-18 15:02 ` Russell Coker
2015-04-19 3:56 ` Duncan [this message]
2015-04-19 20:00 ` Christoph Anton Mitterer
2015-04-20 5:23 ` Duncan
2015-04-20 16:32 ` Christoph Anton Mitterer
2015-04-18 8:10 ` Martin Steigerwald
2015-05-07 5:14 ` Paul Harvey
2015-05-07 18:57 ` Martin Steigerwald
2015-05-08 3:22 ` Paul Harvey
2015-04-18 16:09 ` Kai Krakow
2015-04-18 16:23 ` Kai Krakow
2015-04-18 16:23 ` Chris Murphy
2015-04-18 16:36 ` Kai Krakow
2015-04-19 20:33 ` Chris Murphy
2015-04-18 16:20 ` Chris Murphy
2015-04-18 17:23 ` Christoph Anton Mitterer
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$b5546$9e29a1d1$1032ca34$a50adf64@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;
as well as URLs for NNTP newsgroup(s).