How commitment control works

Commitment control is a function that allows you to define and process a group of changes to resources, such as database files or tables, as a transaction.

Commitment control ensures that either the entire group of individual changes occur on all systems that participate or that none of the changes occur. For example, when you transfer funds from a savings to a checking account, more than one change occurs as a group. To you, this transfer seems like a single change. However, more than one change occurs to the database because both savings and checking accounts are updated. To keep both accounts accurate, either all the changes or none of the changes must occur to the checking and savings account.

Commitment control allows you to:

You can also design an application so that commitment control can restart the application if a job, an activation group within a job, or the system ends abnormally. With commitment control, you can have assurance that when the application starts again, no partial updates are in the database due to incomplete transactions from a prior failure.

Transaction

A transaction is a group of individual changes to objects on the system that appears as a single atomic change to the user.

Note: iSeries™ navigator uses the term transaction, whereas the character-based interface uses the term Logical Unit of Work (LUW). The two terms are interchangeable. This topic, unless specifically referring to the character-based interface, uses the term transaction.

A transaction can be any of the following situations: