I'm having trouble with something that should be rather simple … I'm sure I'm missing something obvious.
I'm trying to change the initial extent of an existing table partition.
For some reason, I have an existing table with initial extents of various sizes, and I'm trying to realign them as I'm just doing some reorg and moving them about (DEV environment).
I'm working on Oracle 11.2.0.3.0
I have a table, range partitioned. Residing in a locally managed tablespace.
It was originally system managed, however, I'm trying to create a new tablespace using uniform extents. I've done that, and am trying to MOVE the objects over, however, I have a couple (empty) partitions which seem to want to have multiple extents (initial 8M, despite uniform of 1M). (oddly some partitions are fine with an initial of 1M ..)
I tried:
alter table my_table modify default attributes storage ( initial 1M next 1M );
that ran, but didn't seem to do anything. So I tried this:
alter table my_table modify default attributes for partition part101 storage ( initial 1M );
but that throws an exception:
ORA-14264: table is not partitioned by Composite Range method
How do I alter the INITIAL extent of a (range) partition ?
Best Answer
Even if its an empty partition,
MOVE
is the way to do it:Default 8M/1M. Now move the partition:
Modifying default attributes will have its effect only on partitions created after setting it: