Processor Transaction Management

Transaction management refers to the action of executing PipelineProcessors in the context of their defined transaction modes. This table describes each transaction mode and what the Pipeline Manager does for each of those modes.

Mode

Description

TX_REQUIRED

The pipeline processor requires that a transaction be present for execution. If there is no transaction available when the pipeline manager is called, then the manager will create one and use it for execution of the pipeline. If the PipelineManager created the transaction then it will be committed after the processor completes, otherwise it will not be.

TX_REQUIRES_NEW

The pipeline processor requires its own transaction for execution. If a transaction is present, then it is suspended. A new transaction is created before the execution. The processor then executes its code. At completion, the transaction is either committed or rolled back. The original transaction is then resumed.

TX_NOT_SUPPORTED

The processor is not to be executed in a transaction. The current transaction is suspended, the processor executes, and then the transaction is resumed.

TX_SUPPORTS

The processor can be executed in a transaction. It will execute in the context of a transaction is one is available. If one is not available it will still execute, but without a transaction.

TX_MANDATORY

This means that a transaction must already be in place, otherwise an error occurs. The transaction is not automatically committed after the request.