From: Marc MERLIN <marc@merlins.org>
To: Filipe David Manana <fdmanana@gmail.com>
Cc: "linux-btrfs@vger.kernel.org" <linux-btrfs@vger.kernel.org>,
Hugo Mills <hugo@carfax.org.uk>, Josef Bacik <jbacik@fb.com>
Subject: Re: How to recover from failing btrfs send | btrfs receive?
Date: Sun, 16 Feb 2014 09:23:15 -0800 [thread overview]
Message-ID: <20140216172315.GC2117@merlins.org> (raw)
In-Reply-To: <CAL3q7H5JY=1WdG0vtNqPcHmwvPXdgznOqU9J9M3ctKgzVZQqAA@mail.gmail.com>
On Sun, Feb 16, 2014 at 03:38:18PM +0000, Filipe David Manana wrote:
> On Sun, Feb 16, 2014 at 2:23 PM, Marc MERLIN <marc@merlins.org> wrote:
> > Hi Fillipe, I see you have another fix for btrfs send (attached below),
> > as ell as your other patch on Jan 21st (neither are in my 3.12.7).
>
> Hi Marc,
> Some replies below inlined.
The proper way to answer Email, thank you :)
> > From my error below,
> >> ERROR: rmdir o1845158-142-0 failed. No such file or directory
> > can you tell if I'm having a different problem than the two patches
> > you sent?
>
> I think it's a different problem.
> The issues I have been fixing are about child directories with lower
> inode numbers then their parents and renaming/moving them.
Got it, thanks for letting me know.
> > More generally, could you hint how I can tell what this
> > rmdir o1845158-142-0
> > refers to, considering that it looks like a made up filename by btrfs
> > send/receive?
>
> Those ox-y-z names are for orphan inodes, and generated by btrfs send yes.
Good to know, thanks.
> Since you don't seem to know the sequence of steps (filesystem ops)
> that lead to that issue, perhaps you can run 'tree -a --inodes'
Nope, only had it once and it was on my home directory, which gets a lot of changes.
If I had a way to know which filename o1845158-142-0 refers to, it would help :)
Ahh, I see that I do, grepped for inode 1818495 in tree -adf --inodes | less
You don't want me to send the output, it's megabytes worth, but here's what changed:
Before:
/mnt/btrfs_pool1/home_ro.20140209_12:00:01/merlin:
├── [1845158] ./gg-src/chromiumos/chroot/usr/share/zoneinfo/posix/America
│ ├── [1845159] ./gg-src/chromiumos/chroot/usr/share/zoneinfo/posix/America/Argentina
│ ├── [1845172] ./gg-src/chromiumos/chroot/usr/share/zoneinfo/posix/America/Indiana
│ ├── [1845181] ./gg-src/chromiumos/chroot/usr/share/zoneinfo/posix/America/Kentucky
│ └── [1845184] ./gg-src/chromiumos/chroot/usr/share/zoneinfo/posix/America/North_Dakota
In my new subvolume, I have this instead (directory is indeed gone, there are other 2 with the same name/hierachy, maybe even the same contents):
After:
/mnt/btrfs_pool1/home/merlin:
legolas:~/gg-src$ tree -adf --inodes | grep zoneinfo/posix/America
│ ├── [4172524] ./ProdNG/PNG_test/chroots/borg/usr/share/zoneinfo/posix/America
│ │ ├── [4172733] ./ProdNG/PNG_test/chroots/borg/usr/share/zoneinfo/posix/America/Argentina
│ │ ├── [4172734] ./ProdNG/PNG_test/chroots/borg/usr/share/zoneinfo/posix/America/Indiana
│ │ ├── [4172735] ./ProdNG/PNG_test/chroots/borg/usr/share/zoneinfo/posix/America/Kentucky
│ │ └── [4172736] ./ProdNG/PNG_test/chroots/borg/usr/share/zoneinfo/posix/America/North_Dakota
├── [4188826] ./ProdNG/PNG_test/usr/share/zoneinfo/posix/America
│ ├── [4189034] ./ProdNG/PNG_test/usr/share/zoneinfo/posix/America/Argentina
│ ├── [4189035] ./ProdNG/PNG_test/usr/share/zoneinfo/posix/America/Indiana
│ ├── [4189036] ./ProdNG/PNG_test/usr/share/zoneinfo/posix/America/Kentucky
│ └── [4189037] ./ProdNG/PNG_test/usr/share/zoneinfo/posix/America/North_Dakota
> against the root of the subvolume and lets us know what the full
> output is. That might help in case it's one more case similar to those
> I have been fixing recently.
Does this help?
I still have the snapshot send/received failed at and the current volume, so it's not too hard
for me to give you other diffs like that, but the full output would be very very large and not
appropriate for posting here :)
Thanks,
Marc
--
"A mouse is a device used to point at the xterm you want to type in" - A.S.R.
Microsoft is to operating systems ....
.... what McDonalds is to gourmet cooking
Home page: http://marc.merlins.org/
next prev parent reply other threads:[~2014-02-16 17:23 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-12 14:22 How to recover from failing btrffs send | btrfs receive? Marc MERLIN
2014-02-14 1:54 ` Marc MERLIN
2014-02-16 14:23 ` How to recover from failing btrfs " Marc MERLIN
2014-02-16 15:38 ` Filipe David Manana
2014-02-16 17:23 ` Marc MERLIN [this message]
2014-02-16 21:08 ` Filipe David Manana
2014-02-17 5:32 ` Marc MERLIN
2014-02-22 19:22 ` btrfs send ioctl failed with -25: Inappropriate ioctl for device Marc MERLIN
-- strict thread matches above, loose matches on Subject: below --
2014-02-16 13:43 [PATCH] Btrfs: incremental send, fix invalid path after dir rename Filipe David Borba 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=20140216172315.GC2117@merlins.org \
--to=marc@merlins.org \
--cc=fdmanana@gmail.com \
--cc=hugo@carfax.org.uk \
--cc=jbacik@fb.com \
--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).