I know you mean it as a term of respect, but the "respected sir" isn't necessary (and it is a bit "over the top").
It loads above the HWM, but in the example I used (manual segment space management), it uses the entire new extent, the load RAISES the HWM
ops$tkyte%ORA10GR2> create tablespace uniform datafile size 15m autoextend on next 5m extent management local uniform size 5m segment space management manual;
Tablespace created.
ops$tkyte%ORA10GR2> create tablespace autoallocate datafile size 10m autoextend on next 1m extent management local autoallocate segment space management manual;
Tablespace created.
ops$tkyte%ORA10GR2>
ops$tkyte%ORA10GR2> create table stage as select * from all_objects;
Table created.
ops$tkyte%ORA10GR2> alter table stage parallel 8;
Table altered.
ops$tkyte%ORA10GR2>
ops$tkyte%ORA10GR2> create table t1 parallel 8 tablespace uniform as select * from stage where 1=0;
Table created.
ops$tkyte%ORA10GR2> create table t2 parallel 8 tablespace autoallocate as select * from stage where 1=0;
Table created.
ops$tkyte%ORA10GR2>
ops$tkyte%ORA10GR2> alter session enable parallel dml;
Session altered.
ops$tkyte%ORA10GR2> insert /*+ append */ into t1 select * from stage;
50396 rows created.
ops$tkyte%ORA10GR2> commit;
Commit complete.
ops$tkyte%ORA10GR2> insert /*+ append */ into t1 select * from stage;
50396 rows created.
ops$tkyte%ORA10GR2> commit;
Commit complete.
ops$tkyte%ORA10GR2> insert /*+ append */ into t2 select * from stage;
50396 rows created.
ops$tkyte%ORA10GR2> commit;
Commit complete.
ops$tkyte%ORA10GR2> insert /*+ append */ into t2 select * from stage;
50396 rows created.
ops$tkyte%ORA10GR2> commit;
Commit complete.
ops$tkyte%ORA10GR2>
ops$tkyte%ORA10GR2> exec show_space( 'T1' );
Free Blocks............................. 4,374
Total Blocks............................ 5,760
Total Bytes............................. 47,185,920
Total MBytes............................ 45
Unused Blocks........................... 0
Unused Bytes............................ 0
Last Used Ext FileId.................... 13
Last Used Ext BlockId................... 3,209
Last Used Block......................... 640
PL/SQL procedure successfully completed.
ops$tkyte%ORA10GR2> exec show_space( 'T2' );
Free Blocks............................. 38
Total Blocks............................ 1,424
Total Bytes............................. 11,665,408
Total MBytes............................ 11
Unused Blocks........................... 0
Unused Bytes............................ 0
Last Used Ext FileId.................... 14
Last Used Ext BlockId................... 529
Last Used Block......................... 8
PL/SQL procedure successfully completed.
ops$tkyte%ORA10GR2>
ops$tkyte%ORA10GR2> set termout off
ops$tkyte%ORA10GR2>
ops$tkyte%ORA10GR2> set autotrace traceonly
ops$tkyte%ORA10GR2> select /*+ noparallel(t1) */ count(*) from t1;
Execution Plan
----------------------------------------------------------
Plan hash value: 3724264953
-------------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
-------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 1270 (1)| 00:00:16 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| T1 | 128K| 1270 (1)| 00:00:16 |
-------------------------------------------------------------------
Note
-----
- dynamic sampling used for this statement
Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
5762 consistent gets
4218 physical reads
0 redo size
413 bytes sent via SQL*Net to client
400 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed
ops$tkyte%ORA10GR2> select /*+ noparallel(t2) */ count(*) from t2;
Execution Plan
----------------------------------------------------------
Plan hash value: 3321871023
-------------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
-------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 316 (1)| 00:00:04 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| T2 | 94031 | 316 (1)| 00:00:04 |
-------------------------------------------------------------------
Note
-----
- dynamic sampling used for this statement
Statistics
----------------------------------------------------------
0 recursive calls
0 db block gets
1439 consistent gets
1324 physical reads
0 redo size
413 bytes sent via SQL*Net to client
400 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed
ops$tkyte%ORA10GR2> set autotrace off