Initial extent size when converting to partitioned table
You can specify the storage
clause for each partition:
create table t ( c1 int) storage ( initial 10m );insert into t with rws as ( select level x from dual connect by level <= 5) select x from rws;commit;alter table t modify partition by range ( c1 ) interval ( 1 ) ( partition p1 values less than ( 2 ) storage ( initial 8k ), partition p2 values less than ( 3 ) storage ( initial 64k ), partition p3 values less than ( 4 ) storage ( initial 128k ) ); select partition_name, initial_extent from user_tab_partitionswhere table_name = 'T';PARTITION_NAME INITIAL_EXTENT P1 16384 P2 65536 P3 131072 SYS_P42018 10485760 SYS_P42019 10485760
Note you have to do this for all the partitions. The auto-created interval partitions will have the same initial as the original table. Any new partitions will also have this same initial size. You can change this with the modify default attributes
clause:
insert into t values ( 6 );alter table t modify default attributes storage ( initial 16k );insert into t values ( 7 ); select partition_name, initial_extent from user_tab_partitionswhere table_name = 'T';PARTITION_NAME INITIAL_EXTENT P1 16384 P2 65536 P3 131072 SYS_P42018 10485760 SYS_P42019 10485760 SYS_P42020 10485760 SYS_P42021 16384