RE: Nologging clause

From: Bobak, Mark <>
Date: Tue, 31 Mar 2009 20:39:46 -0400
Message-ID: <>

To add to Greg's answer a bit, there are a few other operations that are "direct path", in addition to INSERT /*+ APPEND */.

Off the top of my head:
index creation/rebuild
create table as select ...

And there may be a few others. Any non-append insert, any delete or update, will *always* log.

Hope that helps,


PS As far as insert /*+ append */ goes, it only applies to a multi-row insert, like insert /*+ append */ into tab select * from tab2; Something like insert /*+ append */ into tab values(...); WILL log.

From: [] On Behalf Of Greg Rahn [] Sent: Tuesday, March 31, 2009 8:26 PM
To: William Wagman
Subject: Re: Nologging clause

This is correct. The [NO]LOGGING only changes direct path operations.  That is, inserts with the /*+ APPEND */ hint.

So if you want NOLOGGING you need either: - NO ARCHIVE LOG mode

On Tue, Mar 31, 2009 at 5:04 PM, William Wagman <> wrote:
> It appears that he is saying that if a table is set to nologging and my insert mode is append then even if archive logging is on no redo will be generated. I'm still not sure I am understanding this correctly but I take that to mean
> SQL> insert /*+ APPEND */ into <table>;
> Then no redo will be generated. Is that a correct understanding?

Greg Rahn

Received on Tue Mar 31 2009 - 19:39:46 CDT

Original text of this message