Re: expdp and ORA-01555

  • From: Rich <richa03@xxxxxxxxx>
  • To: Oracle-L Freelists <oracle-l@xxxxxxxxxxxxx>
  • Date: Mon, 3 Aug 2009 13:48:19 -0700

List,
I think I might have finally figured out what and why this is happening.

To recap, we are getting 1555 errors while trying to expdp a table with an
out-of-line LOB which was heavily inserted prior to the expdp.

We determined the 1555 was due to one or more blocks not being cleaned out
for the index segment of the LOB.

This seems to be due to the large amount of change to these blocks; however,
increasing PCTVERSION and/or undo_retention have produced no effect on this
issue.

I believe the real reason might be due to the block buffer size for this
tablespace.  From Tom Kyte - page 314 of his book "Expert Oracle Database
Architecture":
"Oracle will keep lists of blocks we have modified; each of these lists is
20 blocks long.  Oracle will allocate as many of these lists as it needs up
to 10 percent of the block buffer cache size."

Is there any way to determine how many of the lists Tom refers to above are
being created?
He says the lists are sized at 20 blocks each, but how many block changes
are on each list?

Oracle, in our now 4 month old SR, is still trying to call this (the 1555) a
"one-time occurrence" and has directed us to ignore it even though I have
reproduced it 3 times.

Thanks,
Rich

On Mon, Apr 6, 2009 at 10:19 AM, Rich <richa03@xxxxxxxxx> wrote:

> I'm running another scan of the LOBs for corruption as suggested by Youg
> (slower version), just in case.
>
> Right now, I'm leaning toward delayed block cleanout as the issue (thanks
> Dave).
>
> However, following Oracle SR suggestion, I am also running a full trace on
> the export - see ML Note *286496.1*
>
> After the export fails, I think analyze might be a better course of action
> so the indexes and other associated objects are hit also - an FTS won't
> touch the indexes and they might have been lazy written as well (pretty
> active DB).
>
> Thanks for the help!
>
>

Other related posts: