1.2.5.4.3 Description

ROLL is used to cancel the database updates, cancels all the messages that were inserted but not available for transmission. For express PCB, the message is made available for transmission when IMS knows that the message is complete (i.e., when a PURG call is called. For non-express PCB, the message is not made available for transmission until the program reaches a commit point.

In Tuxedo ART for IMS, the simulated ROLL call is used to roll back all the changes made by the application program by using tpabort(), and empty the message buffers that have not been sent out, then it return control to Tuxedo ART for IMS but don't return control to the calling program.

For persistent transaction (TP or transaction oriented BMP program), if it is handled by ARTIMPP in persistent mode or handled by ARTIBMPT, ROLL deletes the current message from last commit point in /Q.