linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Inconsistence between sender and receiver
@ 2018-03-07 18:49 Liu Bo
  2018-03-08  6:15 ` Andrei Borzenkov
  2018-03-08 15:29 ` Filipe Manana
  0 siblings, 2 replies; 7+ messages in thread
From: Liu Bo @ 2018-03-07 18:49 UTC (permalink / raw)
  To: linux-btrfs

Hi,

In the following steps[1], if <parent> on receiver side has got
changed via 'btrfs property set', then after doing incremental
updates, receiver gets a different snapshot from what sender has sent.

The reason behind it is that there is no change about file 'foo' in
the send stream, such that receiver simply creates a snapshot of
<parent> on its side with nothing to apply from the send stream.

A possible way to avoid this is to check rtransid and ctranid of
<parent> on receiver side, but I'm not very sure whether the current
behavior is made deliberately, does anyone have an idea? 

Thanks,

-liubo

[1]:
$ btrfs sub create /mnt/send/sub
$ touch /mnt/send/sub/foo
$ btrfs sub snap -r /mnt/send/sub /mnt/send/parent

# send parent out
$ btrfs send /mnt/send/parent | btrfs receive /mnt/recv/

# change parent and file under it
$ btrfs property set -t subvol /mnt/recv/parent ro false
$ truncate -s 4096 /mnt/recv/parent/foo

$ btrfs sub snap -r /mnt/send/sub /mnt/send/update
$ btrfs send -p /mnt/send/parent /mnt/send/update | btrfs receive /mnt/recv

$ ls -l /mnt/send/update
total 0
-rw-r--r-- 1 root root 0 Mar  6 11:13 foo

$ ls -l /mnt/recv/update
total 0
-rw-r--r-- 1 root root 4096 Mar  6 11:14 foo


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-03-09 18:11 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-03-07 18:49 Inconsistence between sender and receiver Liu Bo
2018-03-08  6:15 ` Andrei Borzenkov
2018-03-09  5:38   ` Liu Bo
2018-03-09  6:45     ` Andrei Borzenkov
2018-03-09 18:09       ` David Sterba
2018-03-08 15:29 ` Filipe Manana
2018-03-09  5:39   ` Liu Bo

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).