From: Dave Chinner <david@fromorbit.com>
To: "Linda A. Walsh" <xfs@tlinx.org>
Cc: xfs-oss <xfs@oss.sgi.com>
Subject: Re: When it rains it pours....
Date: Thu, 1 Jul 2010 10:24:24 +1000 [thread overview]
Message-ID: <20100701002424.GP24712@dastard> (raw)
In-Reply-To: <4C2B37D6.50801@tlinx.org>
On Wed, Jun 30, 2010 at 05:25:58AM -0700, Linda A. Walsh wrote:
> Due to another bug in lvm, my restore of this partition crashed after running a few
> hours (takes alot longer to restore than to backup).
>
> So I decided to use the "-R" option to Resume my previously left off dump:
>
> # xfsrestore -R -p 180 -f /backups/Ishtar/torrents/torrents-100629-0-1611.dump .
> xfsrestore: using file dump (drive_simple) strategy
> xfsrestore: version 3.0.4 (dump format 3.0) - Running single-threaded
> xfsrestore: resuming restore previously begun Wed Jun 30 04:41:57 2010
> xfsrestore: examining media file 0
> xfsrestore: seeking past portion of media file already restored
>
> Looks good so far!..Yup, and..
>
> xfsrestore: drive_simple.c:770: do_seek_mark: Assertion `nreadneeded64 <= ( ( intgen_t ) ( ( ( 1ull << ( ( unsigned long long )sizeof( intgen_t ) * ( unsigned long long )8 - ( 1ull + 1ull ))) - 1ull ) * 2ull + 1ull ))' failed.
> Aborted (core dumped)
>
>
> Say what? Um...is that supposed to be an error message?
No, it's an assert failure. i.e. something a developer considered
fatal and requiring debugging if it ever occurred. It's not an error
message an end user is expected to understand. ;)
> Why can't it just tell me why "'nreadneeded64' > 0xbfffffffffffffd"
> is 'bad', or what it means?
Asserts generally indicate that design constraints or assumptions
have been violated which canbe hard to explain in one line to an end
user....
>From a brief look at the code, it appears that the distance between
the stream offset and the next tape mark is greater than MAXINTGENT.
MAXINTGEN evaluates as 0x7fffffff (more commonly known as INT_MAX).
Normally the file is read mark by mark, but when resuming a restore
we skip from the initial header to the checkpointed file mark in one
step. It seems like marks are normally less that 2GB apart, but
in the case of resuming, the attempt to seek from the header to the
checkpointed mark is way more than 2GB and hence it triggers the
assert.
I'm not sure yet how to fix this - I have't dug into the drive code
in xfs_restore before so it'll take a while to understand well
enough to work out a solution.
In the mean time, I think restarting your restore from scratch is
your best bet.
Cheers,
Dave.
--
Dave Chinner
david@fromorbit.com
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
prev parent reply other threads:[~2010-07-01 0:21 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-30 12:25 When it rains it pours Linda A. Walsh
2010-06-30 16:21 ` xfs_restore -R -- recovering a previous restore...does it work? Linda A. Walsh
[not found] ` <20100630172750.GA20764@puku.stupidest.org>
2010-06-30 17:52 ` Linda A. Walsh
[not found] ` <20100630182755.GA23188@puku.stupidest.org>
2010-06-30 19:10 ` Linda A. Walsh
[not found] ` <20100630213653.GA26145@puku.stupidest.org>
2010-07-01 0:06 ` Linda A. Walsh
2010-07-01 0:24 ` Dave Chinner [this message]
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=20100701002424.GP24712@dastard \
--to=david@fromorbit.com \
--cc=xfs@oss.sgi.com \
--cc=xfs@tlinx.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