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

  • From: "Allen, Brandon" <Brandon.Allen@xxxxxxxxxxx>
  • To: "Hemant K Chitale" <hkchital@xxxxxxxxxxxxxx>, "Jared Still" <jkstill@xxxxxxxxx>
  • Date: Wed, 24 Aug 2005 08:55:38 -0700

Hemant, I'm not sure if you've been following the thread the whole time, but 
the issue we are currently addressing is the fact that the documentation 
clearly says that when an index is set to NOLOGGING (regardless of whether it 
was CREATEd or ALTERed NOLOGGING), that direct-path inserts will not be logged 
- see the logging_clause definition under the CREATE INDEX page at this link: 
http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96540/statements_510a.htm#SQLRF01209):
  

Here is the relevant text:
 
"logging_clause

Specify whether the creation of the index will be logged (LOGGING) or not 
logged (NOLOGGING) in the redo log file. This setting also determines whether 
subsequent Direct Loader (SQL*Loader) and direct-path INSERT operations against 
the index are logged or not logged. LOGGING is the default."

So, it appears that the documentation is incorrect - would you agree?



-----Original Message-----
From: Hemant K Chitale [mailto:hkchital@xxxxxxxxxxxxxx]
Sent: Wednesday, August 24, 2005 6:08 AM
To: Allen, Brandon; Jared Still
Cc: oracle-l@xxxxxxxxxxxxx
Subject: re Index NOLOGGING -- was RE: ORA-1578...block
corrupted...error is normal...a block...had a NOLOGGING...operation
performed against


At 08:11 AM Wednesday, Allen, Brandon wrote:
>Here is another test indicating that a direct-path insert to a nologging 
>index is actually logged (like Jared has also shown), which is contrary to 
>the documentation.
>
>Notice that both the table and the index are created as NOLOGGING, but the 
>tablespace containing the index (TOOLS) only gets marked as unrecoverable 
>at the time of the index creation (16:42) and the unrecoverable time is 
>not updated after the direct-path insert, whereas the tablespace 
>containing the table (SYSTEM) *does* have its unrecoverable time updated 
>at the time of the direct-path insert (16:48).  So, it appears the table 
>changes are not logged, and therefore are unrecoverable as would be 
>expected, but the index changes *are* still logged and therefore the index 
>is recoverable, contrary to the documentation:

Yes, of course.  Even if you marked the Index NOLOGGING the Index Updates 
were NOT bulk updates -- to the
Index they are regular DML. They will be LOGged.  {The Index Create was a 
NOLOGging operation, correctly}




Hemant K Chitale
http://web.singnet.com.sg/~hkchital



Privileged/Confidential Information may be contained in this message or 
attachments hereto. Please advise immediately if you or your employer do not 
consent to Internet email for messages of this kind. Opinions, conclusions and 
other information in this message that do not relate to the official business 
of this company shall be understood as neither given nor endorsed by it.

--
//www.freelists.org/webpage/oracle-l

Other related posts: