Compensation in process choreographer
You can use WebSphere Studio to define compensation properties for business
processes and activities. Compensation processing starts as a result of an
error that occurred during the run of a process instance for which compensation
is defined in the process model. The aim is to get back to a consistent state
and to compensate for any operations that were committed up to when the error
occurred.
You can specify compensation for interruptible processes and for non-interruptible
processes.
- Compensation for interruptible processes
- Compensation is triggered if the overall process instance ends with a
business error, or the process instance was explicitly terminated with a request
for compensation. If compensable activities (activities with
associated undo actions) have successfully completed, they are undone by calling
the undo actions in the reverse order of the forward navigation. The sphere
of compensation spans all subprocesses of the overall process.
- Compensation for non-interruptible processes
- Compensation is triggered on rollback of the work unit (the transaction
or the activity session) that contains the process. Therefore, undo actions
are typically specified for activities that cannot be reversed by rolling
back the unit of work. When a process instance runs, undo actions for compensable
activities are registered with the enclosing unit of work. Depending on the
outcome of this unit of work (rollback or commit), compensation starts.
If
the non-interruptible process is a child of a compensable interruptible process,
the undo actions of the non-interruptible process are promoted to the parent
process when the non-interruptible process completes. It can, therefore, potentially
participate in the compensation of the parent process. It is recommended that
you also specify undo actions for the activities of the non-interruptible
process.
If an error occurs during compensation processing, the compensation action
requires manual resolution to overcome the error. You can use the process choreographer Web
client to repair these compensation actions in error.

Administering compensation for a process instance
Searchable topic ID:
cpcc_ep
Last updated: Jun 21, 2007 8:07:48 PM CDT
WebSphere Business Integration Server Foundation, Version 5.0.2
http://publib.boulder.ibm.com/infocenter/wasinfo/index.jsp?topic=/com.ibm.wasee.doc/info/ee/workflow/concepts/cpcc_ep.html