René Nyffenegger's collection of things on the web
René Nyffenegger on Oracle - Most wanted - Feedback
 

Mintrans and Maxtrans

Mintrans and maxtrans are physical attributes for a segment.
segments, such as tables have an interested transaction list in their db block. The size of this list can be set with the parameters mintrans and maxtrans.
The interested transaction list is an array that keeps track of (some of) the most recent transactions on a block. The size of this array is specified by the initrans parameter when an object is created. If more entries are needed in the ITL and if there is enough space in the block, the array can grow up to maxtrans.
This can be demonstrated with 3 sessions:
First session;
create table t_ (a number) initrans 1 maxtrans 2;
insert into t_ values (1);
insert into t_ values (2);
insert into t_ values (3);
commit;

update t_ set a = 101 where a = 1;
Second session:
update t_ set a = 102 where a = 2;
Third session:
update t_ set a = 103 where a = 3;
This third session hangs until one of the other session commits or rolls back.