Append hint..

Hi all..
Please help me with the following quesion.
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64biI have the following scenario.
Job1 "insert" the data into "Table1".
Job1 Insert commands has ""append hint" in it. Job1 has lot of "Inserts with append hint" that
inserts the data into "table1".
Job2 "inserts" the data into "Table1" only.
Job2 insert command doesn't have append hint.
If both job1 and job 2 ""runs parallely"", do the ""append"" hint blocks the other jobs.
Does append hint give any problem in this scenario?
please let me know.

>
If both job1 and job 2 ""runs parallely"", do the ""append"" hint blocks the other jobs.
Does append hint give any problem in this scenario?
>
Direct-path insert will lock the segment. No concurrent DML is allowed. So the second job cannot insert until the direct-path insert is completed and a commit or rollback is performed.
If job 2 starts first and is already doing DML then job1 will run but it will NOT use direct-path insert even though the APPEND hint is used.
See this other thread from this morning.
Insert Into Select with APPEND hint

Similar Messages

  • Append Hint in Oracle

    Hi All,
    Any thoughts on why we get redo generated during a Insert operation with /*+ APPEND */ hint when having the DB in archive log mode. And same statement generating very very less redo when the DB is in no archive log mode. Is the redo generation mandatory in ARCHIVE LOG MODE, if so how can we achieve a direct path insert in DB in archivelog mode.
    DB: 11.2.0
    OS: Windows XP.
    STMT:
    DB in Archive log Mode.
    SQL> insert /*+ append */ into test
    2 select object_id from x;
    71708 rows created.
    Statistics
    217 recursive calls
    146 db block gets
    228 consistent gets
    0 physical reads
    *907948 redo size*
    665 bytes sent via SQL*Net to client
    623 bytes received via SQL*Net from client
    3 SQL*Net roundtrips to/from client
    7 sorts (memory)
    0 sorts (disk)
    71708 rows processed
    DB in No-Archive Log Mode
    SQL> insert /*+ append */ into test
    2 select object_id from x;
    71708 rows created.
    Statistics
    33 recursive calls
    149 db block gets
    125 consistent gets
    0 physical reads
    *3152 redo size*
    662 bytes sent via SQL*Net to client
    623 bytes received via SQL*Net from client
    3 SQL*Net roundtrips to/from client
    1 sorts (memory)
    0 sorts (disk)
    71708 rows processed
    Any help would be greatly appreciated.
    Thanks in Advance.
    Edited by: user8710159 on Jul 11, 2011 12:40 PM

    from http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:5280714813869
    It is even more deep then that. For example:
    Table Mode Insert Mode ArchiveLog mode result
    LOGGING APPEND ARCHIVE LOG redo generated
    NOLOGGING APPEND ARCHIVE LOG no redo
    LOGGING no append "" redo generated
    NOLOGGING no append "" redo generated
    LOGGING APPEND noarchive log mode no redo
    NOLOGGING APPEND noarchive log mode no redo
    LOGGING no append noarchive log mode redo generated
    NOLOGGING no append noarchive log mode redo generated
    Iordan Iotzov
    http://iiotzov.wordpress.com/

  • Create table as with append hint

    All,
    This is part of my oracle plsql procedure.
    EXECUTE IMMEDIATE 'create table inventory_stg
    TABLESPACE users
    PARALLEL 6
    AS
    SELECT DISTINCT /*+ parallel(stg,6) */
    orders.order_sid,
    ORDERS.order_doc,
    stg.ref_doc_num quote_num
    FROM stg,
    ORDERS,
    QUOTE
    WHERE
    stg.DOC_doc=ORDERS.order_doc AND
    stg.ref_doc_num=QUOTE.quote_num AND
    QUOTE.s_no = ORDERS.s_no';
    This query is running for ever.
    If i create a table and insert with append hint, it will complete in 10 min.
    I know, the append hint will bypass redolog and insert above HWM.
    But my above code also a direct load and why it is taking this much time?
    My db is running in archive log mode. But i don't want to log the info in redo.
    Regards
    Govind

    I don't think so. /*+ APPEND */ is probably what you are thinking of. But even if it isn't direct load, inserting into a tablespace that isn't totally fragged might not be too slow for you. I'm just suggesting a test since you weren't getting any direct answers.
    I actually haven't done any testing on parallel with execute immediate either. I don't know if EI imposesl certain limitations on that or not.
    Anyone?
    Update: Actually, you are correct. Append is the default mode for a parallel insert. So that would make me start looking at side affects of the Execute Immediate.
    Message was edited by:
    Gaff

  • APPEND hints

    hi ,
    to my knowledge APPEND hints is to prevent writing to the log file ?
    so my following statement
    insert /*+ APPEND */ into tbl1 SELECT * from tbl2 will prevent the logging ?
    but it gave the following error : ORA-04030: out of process memory when trying to allocate 16504 bytes (pga heap,ksm stack)
    pls advise
    tks & rdgs

    NOLOGGING by Tom Kyte:
    the entire point of nologging is NOT TO GENERATE REDO for many operations --
    these objects are by definition "not recoverable" after these operations until
    you back them up.
    When you create a table or index in nologging -- the initial create is *not
    logged*. Hence, if you restore a backup from BEFORE the time of the create and
    you restore that backup -- all of the blocks that never had redo -- are missing!
    (not corrupt -- missing, purposely -- you told us to make them go away).
    when using a standby database for disaster recovery -- you cannot perform
    nologging operations without performing additional, manual work (in fact, in 9i,
    we can set a flag that says "ignore the request for nologging -- log it anyway"
    on the database to avoid this issue alltogether).

  • --+APPEND Hint -- advantages and disadvantages in OLTP system

    I have a process in with an insert statement takes a lot of time. When I modify the insert statement to use --+ APPEND hint the insert time reduces a lot. There are a lot of indexes on this table and the table and indexes are in logging mode.
    Can someone please clarify is using +APPEND hint will have any disadvantage in an OLTP system . Will any data be lost in case of failure?
    Thanks a lot!!

    Jim,
    Append means two things: 1) don't generate redo if possible, 2) don't run around looking through freelists for existing blocks into which a stray row or three could fit, just insert the rows into new empty blocks.
    The OP stated that the table is in logging mode. This means that the insert/append will be logged and hence the transaction is recoverable. It also means that append doesn't get rid of redo generation, it only gets rid of the freelist overhead.
    I'll create a table that occupies multiple blocks:
    SQL> create table t as
      2  select * from user_objects;
    Table created.
    SQL> insert into t
      2  select * from t;
    58 rows created.
    SQL> /
    116 rows created.
    SQL> /
    232 rows created.
    SQL> /
    464 rows created.
    SQL> select rowid_block, count(*) cnt
      2    from (
      3  select dbms_rowid.rowid_block_number(rowid) AS rowid_block
      4    from t
      5         )
      6   group by rowid_block;
    ROWID_BLOCK        CNT
          32542         58
          32543        183
          32544        183
          32545        183
          32546        183
          32547        138
    6 rows selected.Then I'll empty most of the rows out of those blocks:
    SQL> delete from t
      2   where object_id != 32217;
    912 rows deleted.
    SQL> select rowid_block, count(*) cnt
      2    from (
      3  select dbms_rowid.rowid_block_number(rowid) AS rowid_block
      4    from t
      5         )
      6   group by rowid_block;
    ROWID_BLOCK        CNT
          32542          1
          32543          4
          32544          3
          32545          3
          32546          3
          32547          2
    6 rows selected.Then I'll perform a "normal" bulk insert and we'll see the data added to an existing block:
    SQL> insert into t
      2  select * from t;
    16 rows created.
    SQL> select rowid_block, count(*) cnt
      2    from (
      3  select dbms_rowid.rowid_block_number(rowid) AS rowid_block
      4    from t
      5         )
      6   group by rowid_block;
    ROWID_BLOCK        CNT
          32542          1
          32543          4
          32544          3
          32545          3
          32546          3
          32547         18
    6 rows selected.However, a bulk insert/append will use a new block -- bypassing the freelist:
    SQL> insert /*+ append */ into t
      2  select * from t;
    32 rows created.
    SQL> commit;
    Commit complete.
    SQL> select rowid_block, count(*) cnt
      2    from (
      3  select dbms_rowid.rowid_block_number(rowid) AS rowid_block
      4    from t
      5         )
      6   group by rowid_block;
    ROWID_BLOCK        CNT
           2133         32
          32542          1
          32543          4
          32544          3
          32545          3
          32546          3
          32547         18
    7 rows selected.Scott

  • How to insert APPEND hint.

    Is there a way to do /*+ APPEND */ hint in the insert statement in the OWB mapping? How do I do it?

    There are hints for both extraction and loading in the map's configuration for each table operator. Configure the mapping, expand the tree under Table Operators, the table name and you should see Extraction hint and Loading hint.
    Cheers
    David

  • Insert with APPEND hint

    Hello,
    I have insert statment with APPEND hint. Here statment is as follows.
    INSERT /*+ APPEND */ INTO TEST SELECT * FROM EMP;
    The TEST table is in NOLOGGING mode.
    The table has FK constraint, trigger, index too. Obvisiouly, it would not write the data in redo log. Still does it insert the data above HWM.
    Thanks.

    When you use APPEND hint with INSERT, oracle never bother about the free blocks which are below HWM. It always writies in new blocks, i.e. above HWM.
    Jaffar

  • Append hint + Oracle Ole DB Provider

    Hi everybody!
    This is my first post here in this great forum! ;-)
    I have a problem using Append hint with Oracle OleDB Provider and I've been searching internet for an answer without any luck.
    I'm trying to use Append hint with ADO + Oracle OleDB Provider (OraOLEDB.Oracle.1), like in the SQL below:
    INSERT /*+APPEND*/
    INTO my_table(field1, field2, field3)
    SELECT 0 field1, v.field2, v.field3)
    FROM my_second_table v
    The problem: Oracle is still creting log for this INSERT (It is working like there was no Append hint).
    If I use the same SQL statement with Microsoft Ole DB Provider for Oracle, the Append hint works as expected (log is not created), but doesn't work at all with Oracle DB Provider.
    Trace shows me that the SQL sentence is ok (the append hint is there!).
    I've tried Oracle servers 9.2 and/or 10g, and the problem is the same.
    Question: Does Append hint work with Oracle OleDB Provider? If yes, why it is not working? Something related with connection properties?
    Any help will be much appreciated!
    Thanks in advance.
    Alexandre Machado

    Hi everybody!
    This is my first post here in this great forum! ;-)
    I have a problem using Append hint with Oracle OleDB Provider and I've been searching internet for an answer without any luck.
    I'm trying to use Append hint with ADO + Oracle OleDB Provider (OraOLEDB.Oracle.1), like in the SQL below:
    INSERT /*+APPEND*/
    INTO my_table(field1, field2, field3)
    SELECT 0 field1, v.field2, v.field3)
    FROM my_second_table v
    The problem: Oracle is still creting log for this INSERT (It is working like there was no Append hint).
    If I use the same SQL statement with Microsoft Ole DB Provider for Oracle, the Append hint works as expected (log is not created), but doesn't work at all with Oracle DB Provider.
    Trace shows me that the SQL sentence is ok (the append hint is there!).
    I've tried Oracle servers 9.2 and/or 10g, and the problem is the same.
    Question: Does Append hint work with Oracle OleDB Provider? If yes, why it is not working? Something related with connection properties?
    Any help will be much appreciated!
    Thanks in advance.
    Alexandre Machado

  • Append hint not working

    Hi All,
    SQL> select * from v$version;
    BANNER
    Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production
    PL/SQL Release 11.1.0.7.0 - Production
    CORE    11.1.0.7.0      Production
    TNS for Linux: Version 11.1.0.7.0 - Production
    NLSRTL Version 11.1.0.7.0 - ProductionI am expecting direct path insert from my INSERT with APPEND hint. But thats not working.
    Non of the tables involved are nologging, nor they have parallel mode enabled (code given below).
    So, I am expecting, serial direct path insert, with logging.
    SQL> select * from table( dbms_xplan.display_cursor('fb1hftqrnm9cy') ) ;
    PLAN_TABLE_OUTPUT
    SQL_ID  fb1hftqrnm9cy, child number 0
    INSERT /*+ APPEND */ INTO NEW_TABLE SELECT * FROM
    OLD_TABLE WHERE PROCESS_DATE = :B1
    Plan hash value: 3268711246
    | Id  | Operation                     | Name                           | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | INSERT STATEMENT              |                                |       |       |   588K(100)|          |
    |   1 |  LOAD TABLE CONVENTIONAL      |                                |       |       |            |          |
    |   2 |   TABLE ACCESS BY INDEX ROWID | OLD_TABLE                      |  6078K|   446M|   588K  (1)| 01:57:44 |
    |   3 |    BITMAP CONVERSION TO ROWIDS|                                |       |       |            |          |
    |*  4 |     BITMAP INDEX SINGLE VALUE | OLD_TABLE_IDX1                 |       |       |            |          |
    Predicate Information (identified by operation id):
       4 - access("PROCESS_DATE"=:B1)Here, you can see the actual SQL (with APPEND hint) and the plan showing conventional loading.
    The process here is, OLD_TABLE is a non-partitioned table with bitmap index on process_date column. NEW_TABLE is a partitioned table, with local index and foreign key (enabled). The insert command is inserting data for a given process_date to NEW_TABLE.
    What am I missing here?
    Thanks in advance.

    If table has a foreign key column, data cannot be loaded with direct path:
    SQL> select * from v$version;
    BANNER
    Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production
    PL/SQL Release 11.2.0.2.0 - Production
    CORE    11.2.0.2.0      Production
    TNS for 32-bit Windows: Version 11.2.0.2.0 - Production
    NLSRTL Version 11.2.0.2.0 - Production
    SQL> drop table tp purge;
    Table dropped.
    SQL> drop table tc purge;
    Table dropped.
    SQL> create table tp(px int primary key);
    Table created.
    SQL> create table tc(cx int, cy references tp);
    Table created.
    SQL> insert into tp values(1);
    1 row created.
    SQL> commit;
    Commit complete.
    SQL> insert /*+ append */ into tc select 1,1 from dual;
    1 row created.
    SQL> select * from table( dbms_xplan.display_cursor()) ;
    PLAN_TABLE_OUTPUT
    SQL_ID  7wr256fb8tz82, child number 1
    insert /*+ append */ into tc select 1,1 from dual
    Plan hash value: 1388734953
    | Id  | Operation                | Name | Rows  | Cost (%CPU)| Time     |
    |   0 | INSERT STATEMENT         |      |       |     2 (100)|          |
    |   1 |  LOAD TABLE CONVENTIONAL |      |       |            |          |
    PLAN_TABLE_OUTPUT
    |   2 |   FAST DUAL              |      |     1 |     2   (0)| 00:00:01 |
    14 rows selected.
    SQL> --
    SQL> --
    SQL> drop table tc purge;
    Table dropped.
    SQL> create table tc(cx int, cy int);
    Table created.
    SQL> commit;
    Commit complete.
    SQL> insert /*+ append */ into tc select 1,1 from dual;
    1 row created.
    SQL> select * from table( dbms_xplan.display_cursor()) ;
    PLAN_TABLE_OUTPUT
    SQL_ID  7wr256fb8tz82, child number 1
    insert /*+ append */ into tc select 1,1 from dual
    Plan hash value: 2781518217
    | Id  | Operation        | Name | Rows  | Cost (%CPU)| Time     |
    |   0 | INSERT STATEMENT |      |       |     2 (100)|          |
    |   1 |  LOAD AS SELECT  |      |       |            |          |
    PLAN_TABLE_OUTPUT
    |   2 |   FAST DUAL      |      |     1 |     2   (0)| 00:00:01 |
    14 rows selected.
    SQL>See also http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:1211797200346279484#2096268200346987629.
    Edited by: P. Forstmann on 14 nov. 2011 13:18

  • Append hint generating huge redo

    Hi all,
    Sorry if this question was already asked here.
    We have few [partitioned] tables created with no logging option. Java code [which inserts data in these tables] has /*+ Append */ hint.
    DB is 10.2.0.5 version, DB is in archive.
    When we query "sys.v_$sqlarea" and "dba_users", we do see append hint for the insert statements. But when we do log mining we don’t see append hint there, all the insert statements [huge] are making into redo log[which we don’t want], Any idea why…?
    Thanks,
    AJ

    Thanks for your replies -
    Here is my insert hint -
    INSERT /*+ Append */ INTO tab_1(SUBTYPE........
    Let me know if hint is wrong?
    Question –
    sys.v_$sqlarea shows above hint but mined redo log [archived log as well] doesn’t show hint i.e. insert statement is shown like - INSERT INTO tab_1(SUBTYPE........
    Does that mean oracle is ignoring hint [because hint is wrong, what would be the correct hint]…?
    FYI – we have cursor_sharing set to similar – will that cause an issue?
    Thanks,
    AJ.

  • Append hint + ADO + Oracle OleDB Provider

    Hi everybody!
    This is my first post here in this great forum! ;-)
    I have a problem using Append hint with Oracle OleDB Provider and I've been searching internet for an answer without any luck.
    I'm trying to use Append hint with ADO + Oracle OleDB Provider (OraOLEDB.Oracle.1), like in the SQL below:
    INSERT /*+APPEND*/
    INTO my_table(field1, field2, field3)
    SELECT 0 field1, v.field2, v.field3)
    FROM my_second_table v
    The problem: Oracle is still creting log for this INSERT (It is working like there was no Append hint).
    If I use the same SQL statement with Microsoft Ole DB Provider for Oracle, the Append hint works as expected (log is not created), but doesn't work at all with Oracle DB Provider.
    Trace shows me that the SQL sentence is ok (the append hint is there!).
    I've tried Oracle servers 9.2 and/or 10g, and the problem is the same.
    Question: Does Append hint work with Oracle OleDB Provider? If yes, why it is not working? Something related with connection properties?
    Any help will be much appreciated!
    Thanks in advance.
    Alexandre Machado

    user8010279 wrote:
    Hi Solomon, thanks for you answer.
    Is the same SQL against the same database, with the same program, using ADO + OleDB Provider.
    The table is in NOLOGGING mode.
    When I use Microsoft OleDB Provider for Oracle there is no log creation. Then I disconnect and reconnect to the same server/database, using Oracle OleDB Provider. Then I execute the same SQL and.... there IS log creation, meaning that in that scenario, append hint is being ignored. I can't figure out WHY!!! :-(
    Alexandre,
    I'm not sure what you mean by "there is log creation". In general you need to distinguish between UNDO and REDO generation. A direct-path insert (APPEND hint) doesn't generate undo but still can generate redo, depending on the ARCHIVELOG / FORCE LOGGING mode of the tablespace resp. database and the LOGGING/NOLOGGING attribute of the table.
    Note that in case indexes exist on the table there will always be undo and therefore redo generation for the index maintenance as part of the direct-path insert.
    You should check V$SESSION (SQL_ID in 10g, SQL_ADDRESS + SQL_HASH_VALUE in pre-10g) and V$SQL in the database to double check if the SQL passed by the Oracle OLEDB Provider actually contains the APPEND hint in case the INSERT actually generates UNDO (which is the indicator that shows you if the direct-path insert is used or not). Whether it generates REDO is - as already mentioned - depending on other factors.
    So the question is how have you determined if the direct-path insert mode has been used or not?
    The simplest approach to test if direct-path insert mode is used or not is to issue a query on the object inserted into after the insert before committing the transaction. If it fails with "ORA-12838: cannot read/modify an object after modifying it in parallel" then you successfully inserted using direct-path insert.
    Note that there a number of restrictions that prevent the direct-path insert from happening, in those cases the APPEND hint will be silently ignored, e.g. enabled triggers, foreign keys on the table. A quite comprehensive list of restrictions is listed in the manuals here:
    http://download.oracle.com/docs/cd/B28359_01/server.111/b28313/usingpe.htm#CACEJACE
    Regards,
    Randolf
    Oracle related stuff blog:
    http://oracle-randolf.blogspot.com/
    SQLTools++ for Oracle (Open source Oracle GUI for Windows):
    http://www.sqltools-plusplus.org:7676/
    http://sourceforge.net/projects/sqlt-pp/

  • Append Hint causing ORA-00603: ORACLE server session terminated by fatal er

    Hi All,
    I am facing Service Terminated by Fatal Error when using APPEND hint in my Insert statement.
    We are executing the below commands in Oracle 9ir2.
    This is the scenario which I am facing.
    SQL> insert into VALIDTRANSACTIONLINE select * from TRANSACTIONONLINE;
    1910534 rows created. --works fine
    SQL> rollback;
    Rollback complete.
    SQL> insert /*+ append */ into VALIDTRANSACTIONLINE select * from TRANSACTIONONLINE;
    ERROR at line 1:
    ORA-00603: ORACLE server session terminated by fatal error
    FYI: The table is having LOGGING-NO and the tablespace for this table is having more than 5GB of free space and undotablespace is also around 650 MB and the total size of insertion will be less than 50MB records.
    Has anyone faced this kind of issue.
    Appreciate your response.
    Thanks,
    Madhu K.

    Hi,
    FYI:
    I can see the undotablespace is having 0MB free space.
    it is a very strage issue.
    With Undotablespace Zero, I was able to insert the data having APPEND Hint but no indexes on the table.
    But when I create an Index on the Table and the Index is also in NOLOGGING mode, the Insertion is again failed with FATAL Error.
    Ex: No Index on the table.
    SQL> INSERT +append
    2 INTO credit
    3 SELECT /*+ driving_site(t1) */ * FROM tru_cmp.credit@EPSARCDV_TO_EPSDEV1.DIRECTV.COM t1 WHERE PERIODSEQ =300;
    1999401 rows created.
    CREATE UNIQUE INDEX TRU_CMP.CREDIT_PK_IND ON TRU_CMP.CREDIT
    (CREDITSEQ)
    NOLOGGING
    TABLESPACE TALLYINDEX
    NOPARALLEL
    INSERT +append
    INTO credit
    SELECT /*+ driving_site(t1) */ * FROM tru_cmp.credit@EPSARCDV_TO_EPSDEV1.DIRECTV.COM t1 WHERE PERIODSEQ =300;
    ERROR at line 3:
    ORA-00603: ORACLE server session terminated by fatal error
    Can you let me is this related to the Data File issue, so that I can ask the DBA to look into this as I dont have access to those alert log files.
    Thanks,
    Madhu K.

  • Append hint redo generation

    Hi,
    My question is about redo generation when using append hint . i have a database which is in FORCE loggind mode for standby database.if i use append hint , will it generate any redo ? i wonder will the standby db be same as primary after append hint usage ?
    thanks.

    Hi,
    thanks for answer.
    the sentence says
    "if the database is in ARCHIVELOG and FORCE LOGGING mode, then direct-path SQL generate data redo for both LOGGING and NOLOGGING tables." . This is my case.
    i have opened archive_log with dbms_logmnr but i could not find any redo . So i wonder standby db will not be in synchronize with primary ?
    thanks.

  • Using APPEND hints

    Hi ,
    i know that the APPEND hints is to prevent logging
    and it works only if you use a select * from tbl
    i.e insert /*+ APPEND */ into tbl2 select * from tbl1 ??
    IF you use
    insert /*+ APPEND */ into tbl2 select a.col1 , a.col2 from tbl1 a it WILL BE LOGGED ??
    pls advise
    tks & rdgs

    from what i see in fact the 3rd option is writting even lesser to the redo log ?No, 2nd and 3rd options are exactly the same. In previous example, the difference was due to extent management operations I believe (when more space is needed, Oracle allocates new extents as we add more and more rows to our table).
    Consider:
    SQL> create table big as select owner, object_name from all_objects;
    Table created.
    SQL> -- Let's create initially large table segment, to postpone its extending ...
    SQL> create table test STORAGE (INITIAL 20M) as select * from big where 1 = 0;
    Table created.
    SQL> set autot traceonly stat
    SQL>
    SQL> insert into test select * from big;
    46660 rows created.
    Statistics
              2  recursive calls
           1878  db block gets
            451  consistent gets
            196  physical reads
        1725756  redo size
            791  bytes sent via SQL*Net to client
            815  bytes received via SQL*Net from client
              4  SQL*Net roundtrips to/from client
              2  sorts (memory)
              0  sorts (disk)
          46660  rows processed
    SQL> rollback;
    Rollback complete.
    SQL> insert /*+ APPEND */ into test select * from big;
    46660 rows created.
    Statistics
              0  recursive calls
             10  db block gets
            200  consistent gets
              0  physical reads
            504  redo size <==
            774  bytes sent via SQL*Net to client
            829  bytes received via SQL*Net from client
              4  SQL*Net roundtrips to/from client
              1  sorts (memory)
              0  sorts (disk)
          46660  rows processed
    SQL> rollback;
    Rollback complete.
    SQL> insert /*+ APPEND */ into test select a.owner, a.object_name from big a;
    46660 rows created.
    Statistics
              0  recursive calls
             10  db block gets
            200  consistent gets
              0  physical reads
            504  redo size <==
            776  bytes sent via SQL*Net to client
            852  bytes received via SQL*Net from client
              4  SQL*Net roundtrips to/from client
              1  sorts (memory)
              0  sorts (disk)
          46660  rows processedSo, as far as I can see, they're the same.
    ... my dba told me that a insert with Append hints MUST use a select * in order not to cause loggingI guess your dba is smoking something :)

  • Append hints in insert query

    Hi,
    I want to know the difference between insert /*+ APPEND NOLOGGING PARALLEL */ into tablename and insert /*+ APPEND */ into tablename. Also, which hint will make the performance faster and in which conditions.
    Also, anu URL given as reference for the same will be highly appreciated.

    It's wrong, there is no NOLOGGING hint. I notice it doesn't say what it's supposed to do.
    See Metalink note 826893.1 (mentioned by Jonathan Lewis here.
    Edited by: William Robertson on May 30, 2011 8:36 AM

Maybe you are looking for

  • MBAM installation fails with 1603 error

    I have a Windows 7 Enterprise client computer that I am attempting to install the MBAM client. The installation fails reporting a 1603 error. There are three areas in the installation log where I receive a return value 3: Exit: MBAMClientCAs.dll : Po

  • Can I clean install a Windows 7 Pro System Builder on a Lenovo PC with Windows 8 preinstalled?

    Hi. I would like to clean install windows 7 on a Lenovo PC  that came with Windows 8 core preinstalled. I want to format the entire drive and remove windows 8 and clean install windows 7.  I already tried the clean install of Windows 7 Pro to get all

  • Single User Mode (cdrom) issue

    Hi, I managed to modify all required files into my bootable cdrom, which is working fine. But when I boot it with " boot cdrom -s ", then it doesn't come up with bash (which I have put into /etc/passwd) . However, bash works fine on remote login (whe

  • ESS - Change Address (IT-0006) - Workflow

    Hi, W need to implement workflow for approval by the modification of addresses in ESS by Portal, we want to know if there's any standard way to do it. Thanks in advace

  • Osx lion slow on macbook pro early 2008

    i upgraded the day it came out and my mcbkpro is so slow recently its not even funny i need help also having problems printing from preview i get the stupid rainbow wheel its so frustrating