Removing the oldest open transaction

Use the rollback oldest open transaction (ROOT) operator command to remove the oldest open transaction from the Replication Agent for DB2 UDB transaction queue.

If a very large transaction (such as a transaction that deletes all rows in a 600000-row table) has been captured by Replication Agent for DB2 UDB, the transaction causes a large number of records to be processed by Replication Agent for DB2 UDB if it is monitoring the table.

Because Replication Agent for DB2 UDB processes data in sequence, the large transaction may hold up many other transactions. Also, on rare occasions, a transaction may end in an abnormal way in DB2 so that a COMMIT or ROLLBACK is never issued.

Eventually, the large transaction becomes the oldest open transaction. You can use the ROOT operator command to remove the transaction from the Replication Agent for DB2 UDB transaction queue.

NoteIt may be more efficient to turn off replication for the table and DELETE the target table and the source table instead of using the ROOT command.

Syntax

F REPJOB,E,ROOT

Usage

This is how the ROOT command works:

  1. Issue the ROOT command, which creates a rollback transaction record for the oldest open transaction.

  2. Replication Agent for DB2 UDB processes the rollback as if it came from the log. The transaction is automatically removed from the queue and all other log records for that transaction are ignored.

  3. Replication Agent for DB2 UDB continues to process all other records for tables that it is monitoring.