Recovery can be realized only replaying WS log sequencially? I'm not sure that.
If there is a WS log sequence as below.
(1) XID=101, INSERT INTO t1 VALUES ( 1, 'Name 1' );
(2) XID=102, INSERT INTO t1 VALUES ( 2, 'Name 2' );
(3) XID=102, ABORT;
(4) XID=101, COMMIT;
(2) and (3) must be ignored when the RM recover. But if the recovery session replays this sequence in a single transaction,
(1) XID=501, INSERT INTO t1 VALUES ( 1, 'Name 1' );
(2) XID=501, INSERT INTO t1 VALUES ( 2, 'Name 2' );
(3) XID=501, ABORT;
(4) XID=501, COMMIT;
above operations don't insert any records.
So (1),(4) and (2),(3) must be isolated.
But how? I don't think using many transaction sessions in recoverying is a smart way.
Monday, May 02, 2005
Subscribe to:
Post Comments (Atom)
1 comment:
If the RM forms tuples from WS log and applyes them to the table directly using heap_insert()/heap_update()/heap_delete() functions, isolation can be done in single session.
Post a Comment