Skip to Main Content

Oracle Database Discussions

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Question about AUTOALLOCATE and UNIFORM in tablespace management

783956Sep 12 2010 — edited Sep 12 2010
Good afternoon,

I am unclear as to whether a UNIFORM extent allocation implies that the datafile must be extended manually or not.

From the documentation:

>
The following statement creates a locally managed tablespace named lmtbsb and specifies AUTOALLOCATE:
CREATE TABLESPACE lmtbsb DATAFILE '/u02/oracle/data/lmtbsb01.dbf' SIZE 50M
EXTENT MANAGEMENT LOCAL AUTOALLOCATE;

AUTOALLOCATE causes the tablespace to be system managed with a minimum extent size of 64K.

The alternative to AUTOALLOCATE is UNIFORM. which specifies that the tablespace is managed with extents of uniform size. You can specify that size in the SIZE clause of UNIFORM. If you omit SIZE, then the default size is 1M.

The following example creates a tablespace with uniform 128K extents. (In a database with 2K blocks, each extent would be equivalent to 64 database blocks). Each 128K extent is represented by a bit in the extent bitmap for this file.
CREATE TABLESPACE lmtbsb DATAFILE '/u02/oracle/data/lmtbsb01.dbf' SIZE 50M
EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K;
>

makes it clear that the UNIFORM clause controls the size of the extents that will be allocated but, doesn't really say if those extents will be allocated manually or automatically. In other words, I am unclear as to whether the datafile in the second case will be automatically extended or not.

In my test environment, when I issued the command:
SQL> create tablespace largetabs datafile 'E:\Oracle\app\Private\oradata\dbca\largetabs.dbf' size 100M extent management local uniform size 16M;
and looked in EM at the tablespace I had just created above, there was no checkmark in the box "Automatically extend datafile when full", which led to the doubt I have now.

The question is: when extent allocation is UNIFORM, does that mean that space must be manually allocated or can the datafile be automatically extended ? If it can be automatically extended, I would much appreciate an example of a create tablespace command that accomplishes that result.

Thank you for your help,

John.
This post has been answered by Chinar on Sep 12 2010
Jump to Answer
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Oct 10 2010
Added on Sep 12 2010
10 comments
1,836 views