Oracle® Database Administrator's Guide 11g Release 1 (11.1) Part Number B28310-01 |
|
|
View PDF |
The following topics are contained in this section:
Specifying the INITRANS Parameter
See Also:
Oracle Database Concepts for more information on data blocks
Oracle Database SQL Language Reference for syntax and other details of the INITRANS
physical attributes parameters
INITRANS
specifies the number of update transaction entries for which space is initially reserved in the data block header. Space is reserved in the headers of all data blocks in the associated segment.
As multiple transactions concurrently access the rows of the same data block, space is allocated for each update transaction entry in the block. Once the space reserved by INITRANS
is depleted, space for additional transaction entries is allocated out of the free space in a block, if available. Once allocated, this space effectively becomes a permanent part of the block header.
Note:
In earlier releases of Oracle Database, theMAXTRANS
parameter limited the number of transaction entries that could concurrently use data in a data block. This parameter has been deprecated. Oracle Database now automatically allows up to 255 concurrent update transactions for any data block, depending on the available space in the block.
The database ignores MAXTRANS
when specified by users only for new objects created when the COMPATIBLE
initialization parameter is set to 10.0.0 or greater.
You should consider the following when setting the INITRANS
parameter for a schema object:
The space you would like to reserve for transaction entries compared to the space you would reserve for database data
The number of concurrent transactions that are likely to touch the same data blocks at any given time
For example, if a table is very large and only a small number of users simultaneously access the table, the chances of multiple concurrent transactions requiring access to the same data block is low. Therefore, INITRANS
can be set low, especially if space is at a premium in the database.
Alternatively, assume that a table is usually accessed by many users at the same time. In this case, you might consider preallocating transaction entry space by using a high INITRANS
. This eliminates the overhead of having to allocate transaction entry space, as required when the object is in use.
In general, Oracle recommends that you not change the value of INITRANS
from its default.