RE: ORA-1578...block corrupted...error is normal...a block...had a NOLOGGING...operation performed against

  • From: "Marquez, Chris" <cmarquez@xxxxxxxxxxxxxxxx>
  • To: <oracle-l@xxxxxxxxxxxxx>
  • Date: Fri, 19 Aug 2005 16:02:30 -0400

All,

After talking to a co-DBA we believe we *did* have [create] nologging 
operations within the redo logs applied to the recovered database.

Also, I just tested out our database in constant recovery mode (poor man's 
standby).
We have 33 indexes created *and* defined with nologging, *before* the database 
was restored and recovered (applying logs) to our standby server.  It seems 
that we can select from indexes that were "CREATED" with NOLOGGING and *still* 
are "DEFINED as LOGGING='NO".  When we select using the index on the database 
(in read only mode) we find the index and data are fine...no errors.
We have applied two weeks worth of arch log (transactions) against these 
indexes "DEFINED as LOGGING='NO".

So now that statement or questions is that;
"CREATED" with NOLOGGING, must be entirely different than "DEFINED [ALTER?] as 
LOGGING='NO" (dba_indexes).
Or rather NOLOGGING only has negative recovery impact on CREATED DDL?

Chris Marquez
Oracle DBA


-----Original Message-----
From: oracle-l-bounce@xxxxxxxxxxxxx on behalf of Jared Still
Sent: Fri 8/19/2005 3:31 PM
To: joelgarry@xxxxxxxxxxxxxxx
Cc: oracle-l@xxxxxxxxxxxxx
Subject: Re: ORA-1578...block corrupted...error is normal...a block...had a 
NOLOGGING...operation performed against
 
On 8/19/05, Joel Garry <joelgarry@xxxxxxxxxxxxxxx> wrote:
> 
> 
> Believe it. Time bomb sat there since long ago. Nologging operations
> bypass the redo logs. So they bypass the archived logs. So when you
> restore the datafile by rolling forward, you invalidate those blocks.


Roll forward from when?

If you restore from a backup prior to the nologging operation, and roll 
forward, the index created with 'nologging' will not be restored.

If you restore a backup taken after the creation of the nologging operation,
the nologging object will be restored.


So you have to fix them with some other mechanism than recovery. Maybe
> use force logging if you don't want to run into this again. And all
> that advice about taking a backup after nologging operations seems
> pretty misleading, huh?


Either you need to test it further, or I don't understand your premise.

-- 
Jared Still
Certifiable Oracle DBA and Part Time Perl Evangelist




Other related posts: