How does Oracle set the High Water Mark?

  • From: Feighery Raymond <Raymond.Feighery@xxxxxxxxxxxxx>
  • To: "'oracle-l@xxxxxxxxxxxxx'" <oracle-l@xxxxxxxxxxxxx>
  • Date: Wed, 10 Mar 2004 13:56:27 -0000

Oracle 9.2.0.4 Solaris 8

How does Oracle set the HWM? In the example below, I create a table and
insert one row. I would expect only one block to be used, instead Oracle
seems to have pushed the HWM up to 13 blocks. I can imagine that this might
be done to "pre-mark" rows as used during bulk inserts, but how does Oracle
decide where to set the HWM?

SQL> select * from dba_tablespaces where tablespace_name = 'EXAMPLE'; 
TABLESPACE_NAME BLOCK_SIZE INITIAL_EXTENT NEXT_EXTENT MIN_EXTENTS 
------------------------------ ---------- -------------- -----------
----------- 
MAX_EXTENTS PCT_INCREASE MIN_EXTLEN STATUS CONTENTS LOGGING FOR EXTENT_MAN 
----------- ------------ ---------- --------- --------- --------- ---
---------- 
ALLOCATIO PLU SEGMEN DEF_TAB_ 
--------- --- ------ -------- 
EXAMPLE 4096 65536 1 
2147483645 65536 ONLINE PERMANENT LOGGING NO LOCAL 
SYSTEM NO AUTO DISABLED 

SQL> create table t (col1 number(1)); 
Table created. 
SQL> analyze table t compute statistics; 
Table analyzed. 
SQL> insert into t values(1); 
1 row created. 
SQL> commit; 
Commit complete. 
SQL> select blocks, empty_blocks from user_tables where table_name = 'T'; 
BLOCKS EMPTY_BLOCKS 
---------- ------------ 
0 16 
SQL> analyze table t compute statistics; 
Table analyzed. 
SQL> select blocks, empty_blocks from user_tables where table_name = 'T'; 
BLOCKS EMPTY_BLOCKS 
---------- ------------ 
13 3 

___________________________________________________________________________ 


This email and any attached to it are confidential and intended only for the
individual or entity to which it is addressed.  If you are not the intended
recipient, please let us know by telephoning or emailing the sender.  You
should also delete the email and any attachment from your systems and should
not copy the email or any attachment or disclose their content to any other
person or entity.  The views expressed here are not necessarily those of
Churchill Insurance Group plc or its affiliates or subsidiaries. Thank you. 

Churchill Insurance Group plc.  Company Registration Number - 2280426.
England. 

Registered Office: Churchill Court, Westmoreland Road, Bromley, Kent BR1
1DP. 


----------------------------------------------------------------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
----------------------------------------------------------------
To unsubscribe send email to:  oracle-l-request@xxxxxxxxxxxxx
put 'unsubscribe' in the subject line.
--
Archives are at //www.freelists.org/archives/oracle-l/
FAQ is at //www.freelists.org/help/fom-serve/cache/1.html
-----------------------------------------------------------------

Other related posts: