linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Ryan C. Underwood" <nemesis-lists@icequake.net>
To: linux-btrfs@vger.kernel.org
Subject: Re: Several unhappy btrfs's after RAID meltdown
Date: Thu, 15 Nov 2012 10:00:03 -0600	[thread overview]
Message-ID: <20121115160003.GA32396@localhost.localdomain> (raw)
In-Reply-To: <20120601143857.GB25227@localhost.localdomain>

[-- Attachment #1: Type: text/plain, Size: 2887 bytes --]


Finally made some more progress on one of my melted down btrfs from
earlier this year.

First I hacked find-root.c to not stop scanning the disk when it
thinks it has found the real root.  I wanted it to print out all
possible roots.  I saved the stderr output to a logfile.  About 1226
possible roots were found.

Then I used btrfs-restore, iterating over each one of these to
attempt to use each one of them as the root and see what files could
be found:

for temp in `sed 's/^.*block \([0-9]\+\).*$/\1/' log`;
    do echo $temp;
    nice ./btrfs-restore -t $temp /dev/mapper/tr5ut-vicep--library /mnt/recovery;
done

In this way I was able to recover about 36GB of data and the
directory structure of what is recovered looks fine.  The data also
looks fine too by scanning MIME types with "file" and selecting a few
text or HTML files to check manually.

There is still a lot of data missing though.  If I am reading this
correctly there was about 300GB of data which compressed to 254GB
on-disk.

Label: 'vicep-library'  uuid: 89b14d35-b31a-4fbe-a2d9-cb83cbcd3851
        Total devices 1 FS bytes used 254.35GB
        devid    1 size 1.00TB used 299.04GB path /dev/dm-27

A lot of my btrfs-restore output looks like this:

318259351552
parent transid verify failed on 318259351552 wanted 575931 found 546662
parent transid verify failed on 318259351552 wanted 575931 found 546662
parent transid verify failed on 318259351552 wanted 575931 found 546662
parent transid verify failed on 318259351552 wanted 575931 found 546662
Ignoring transid failure
parent transid verify failed on 318125375488 wanted 541528 found 572360
parent transid verify failed on 318125375488 wanted 541528 found 572360
parent transid verify failed on 318125375488 wanted 541528 found 572360
parent transid verify failed on 318125375488 wanted 541528 found 572360
Ignoring transid failure
parent transid verify failed on 561016832 wanted 544038 found 574369
parent transid verify failed on 561016832 wanted 544038 found 574369
parent transid verify failed on 561016832 wanted 544038 found 574369
parent transid verify failed on 561016832 wanted 544038 found 574369
Ignoring transid failure
leaf parent key incorrect 561016832
Root objectid is 5
parent transid verify failed on 164073472 wanted 544650 found 562972
parent transid verify failed on 164073472 wanted 544650 found 562972
parent transid verify failed on 164073472 wanted 544650 found 562972
parent transid verify failed on 164073472 wanted 544650 found 562972
Ignoring transid failure
leaf parent key incorrect 164073472
Error searching -1

As far as I can see only the #5 root object was found, at least I
don't see any others found in the output.  This could account for the
missing data.  How could I get to the other root objects?

-- 
Ryan C. Underwood, <nemesis@icequake.net>

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 190 bytes --]

  reply	other threads:[~2012-11-15 16:09 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-05 18:41 Several unhappy btrfs's after RAID meltdown Ryan C. Underwood
2012-02-07  3:39 ` Ryan C. Underwood
2012-02-07  4:17   ` Liu Bo
2012-02-07 15:03     ` Ryan C. Underwood
2012-02-07  9:53   ` Duncan
2012-02-07 14:04     ` Ryan C. Underwood
2012-02-07 14:36       ` Mitch Harder
2012-02-07 15:42         ` Ryan C. Underwood
2012-02-07 17:46           ` Ryan C. Underwood
2012-02-07 17:49             ` Ryan C. Underwood
2012-02-12 16:31               ` Ryan C. Underwood
2012-02-13 13:48                 ` David Sterba
2012-06-01 14:38                 ` Ryan C. Underwood
2012-11-15 16:00                   ` Ryan C. Underwood [this message]
2012-11-16  8:39                     ` Michael Kjörling
2012-02-08  6:32     ` Chris Samuel

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=20121115160003.GA32396@localhost.localdomain \
    --to=nemesis-lists@icequake.net \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=nemesis@icequake.net \
    /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).