Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> Re: UNTO TBS behavior in 9i

Re: UNTO TBS behavior in 9i

From: Hemant K Chitale <hkchital_at_singnet.com.sg>
Date: Tue, 23 Jan 2007 17:28:29 +0800
Message-Id: <7.0.1.0.0.20070123172453.01b36c10@singnet.com.sg>

  1. If you are doing multiple commits during the insert run, each committed batch remains in UNDO for the duration of 2 hours. You should reduce UNDO_RETENTION.
  2. UNDO is maintained for both Table Rows and Index updates -- eg when you INSERT, you are adding entries to indexes on the table as well. So UNDO is maintained for that as well.
  3. You can monitor the size of your transaction by querying V$TRANSACTION -- that would show the number of undo "records" (table+index entries) and undo blocks used between every commit.
  4. You could avoid undo and redo both -- eg alter table target_table nologging ; insert /*+ APPEND */ into target_table .... <finally> commit ; alter table target_table logging;

At 02:19 PM Tuesday, Ram Raman wrote:
>Hi all,
>
>We are running a batch process to insert data from one table to
>another. The data inserted is over than 10 million rows. We had
>about 20GB of UNDO tablespace. UNDO_RETENTION is 7200. When we start
>the insert process no other process runs and all the time during the
>insert process nothing else runs. We insert about 5.5 Gb of data
>including indexes.
>

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

--
http://www.freelists.org/webpage/oracle-l
Received on Tue Jan 23 2007 - 03:28:29 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US