All of lore.kernel.org
 help / color / mirror / Atom feed
From: Josef Bacik <jbacik@fb.com>
To: Hugo Mills <hugo@carfax.org.uk>, <linux-btrfs@vger.kernel.org>
Subject: Re: [PATCH] Btrfs: use received_uuid of parent during send
Date: Thu, 11 Jun 2015 13:16:26 -0400	[thread overview]
Message-ID: <5579C26A.4040203@fb.com> (raw)
In-Reply-To: <20150611170942.GK18226@carfax.org.uk>

On 06/11/2015 01:09 PM, Hugo Mills wrote:
> On Thu, Jun 04, 2015 at 05:17:25PM -0400, Josef Bacik wrote:
>> Neil Horman pointed out a problem where if he did something like this
>>
>> receive A
>> snap A B
>> change B
>> send -p A B
>>
>> and then on another box do
>>
>> recieve A
>> receive B
>>
>> the receive B would fail because we use the UUID of A for the clone sources for
>> B.  This makes sense most of the time because normally you are sending from the
>> original sources, not a received source.  However when you use a recieved subvol
>> its UUID is going to be something completely different, so if you then try to
>> receive the diff on a different volume it won't find the UUID because the new A
>> will be something else.  The only constant is the received uuid.  So instead
>> check to see if we have received_uuid set on the root, and if so use that as the
>> clone source, as btrfs receive looks for matches either in received_uuid or
>> uuid.  Thanks,
>
>     While this deals with Neil's problem, there's a few other use-cases
> that people have been asking for that (I think) it won't deal with.
>
>     I think ultimately we should be sending all three of the parent
> UUID, the parent's Received UUID (if it exists), and the parent's
> Parent UUID. That would have to go in the FARv2 update, though.
>
>     However, since this patch doesn't rule out the above happening at
> some future date, and I think it'll do the job as described above,
>

Yeah I'd like to send more information so we can better find the UUID 
we're looking for, but I think at least trying to keep a consistent UUID 
we carry around would be good.  Received UUID mostly accomplishes this, 
I'd like to know what other use cases aren't working so we can think 
about what we need to do for them.  Thanks,

Josef


  reply	other threads:[~2015-06-11 17:16 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-04 21:17 [PATCH] Btrfs: use received_uuid of parent during send Josef Bacik
2015-06-11 17:09 ` Hugo Mills
2015-06-11 17:16   ` Josef Bacik [this message]
2015-06-11 17:33     ` Hugo Mills

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=5579C26A.4040203@fb.com \
    --to=jbacik@fb.com \
    --cc=hugo@carfax.org.uk \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.