High Water Mark (HWM) for a table in an Oracle Database is the line between blocks that have been used and ones that have never been. Truncating a table resets the HWM to zero.
Now, if I have a partitioned table, I’d like to know if the following is true:
- Does each partition maintain its own HWM?
- If not, does
alter table ... drop partition ...affect table’s HWM?
The idea is I’d like to populate partition’s tables with insert /*+ append */ (direct path insert), but it only writes data beyond the HWM, so will the space be reused if I recreate the partition? I failed to find information on this specific aspect.
Each partition is a separate segment, so each would have its own HWM. I presume that truncating the whole table would reset the HWM for all partitions. You can truncate individual partitions as well, which certainly would reset the HWM for the partition.