Skip to Main Content

Breadcrumb

Question and Answer

Tom Kyte

Thanks for the question, Rajeshwaran.

Asked: March 28, 2014 - 12:16 pm UTC

Last updated: March 31, 2014 - 11:50 am UTC

Version: 12.0.1.0

Viewed 1000+ times

You Asked

Tom,

I dont see redo_size REDUCED when TEMP_UNDO_ENABLED=true.
Is that Temp undo is not supported in multitenant Architecture?

(looks like the parameter works at SYSTEM level but not at SESSION level)
http://docs.oracle.com/cd/E16655_01/server.121/e17633/logical.htm#CNCPT89227


rajesh@PDB1> create global temporary table gtt
  2  on commit delete rows
  3  as
  4  select * from all_objects
  5  where 1 = 0;

Table created.

rajesh@PDB1>
rajesh@PDB1> alter session set temp_undo_enabled=false;

Session altered.

rajesh@PDB1>
rajesh@PDB1> set autotrace traceonly statistics
rajesh@PDB1> insert into gtt
  2  select * from all_objects ;

73812 rows created.


Statistics
----------------------------------------------------------

     482804  redo size
      73812  rows processed

rajesh@PDB1>
rajesh@PDB1> update gtt
  2  set object_name = lower(object_name);

73812 rows updated.


Statistics
----------------------------------------------------------

    7162396  redo size
      73812  rows processed

rajesh@PDB1> set autotrace off
rajesh@PDB1>
rajesh@PDB1> commit;

Commit complete.

rajesh@PDB1>
rajesh@PDB1>
rajesh@PDB1> alter session set temp_undo_enabled=True;

Session altered.

rajesh@PDB1> set autotrace traceonly statistics
rajesh@PDB1> insert into gtt
  2  select * from all_objects ;

73812 rows created.


Statistics
----------------------------------------------------------
     482848  redo size
      73812  rows processed

rajesh@PDB1>
rajesh@PDB1>
rajesh@PDB1> update gtt
  2  set object_name = lower(object_name);

73812 rows updated.


Statistics
----------------------------------------------------------

    5648620  redo size
      73812  rows processed

rajesh@PDB1> set autotrace off;
rajesh@PDB1> commit;

Commit complete.

rajesh@PDB1>

and Tom said...

current implementation restriction.

temp undo is supported (you have reported that yourself above???? you started with "is it true" but then immediately said "it works like this"), but not as a session settable capability.

Is this answer out of date? If it is, please let us know via a Comment

More to Explore

Multitenant

Need more information on Multitenant? Check out the Multitenant docs for the Oracle Database