This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)
This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. Find sources: "Compensating transaction" – news · newspapers · books · scholar · JSTOR(November 2006) (Learn how and when to remove this message)
The article's lead section may need to be rewritten. Please help improve the lead and read the lead layout guide.(July 2011) (Learn how and when to remove this message)
(Learn how and when to remove this message)
The execution of a business process consists of one or more transactions. Each transaction may consist of several individual operations yet, as a whole, it moves the system between consistent states.
There are two groups of systems where compensating transaction may be applied:
1. In the context of a database this is often easily achieved using transactions and the commit/rollback mechanism.[1]Compensating transaction logic could be implemented as additional on top of database supporting commit/rollback. In that case, we can decrease business transaction granularity.
2. For systems without a commit/rollback mechanism available, one can undo a failed transaction with a compensating transaction, which will bring the system back to its initial state. Typically, this is only a workaround which has to be implemented manually and cannot guarantee that the system always ends in a consistent state. The system designer may need to consider what happens if the compensating transaction also fails.
Compensating transactions are also used in case where a transaction is long lived (commonly called Saga Transactions), for instance in a business process requiring user input. In such cases, data will be committed to permanent storage, but may subsequently need to be rolled back, perhaps due to the user opting to cancel the operation. Unlike conventional rollbacks, specific business logic will typically be required to roll back a long lived transaction and restore the system to its original state. This type of transaction differs from distributed transactions (often implemented using the two-phase-commit protocol), because although both types of transactions can result in multiple data stores being updated, compensating transactions allows for the updates to span a long period of time.
Compensating transactions are often designed into Web services that participate in the execution of business processes that are part of a service-oriented architecture solution.
Note that compensating transactions don't always work. [2]
^Gray, Jim (June 1981). "The transaction concept: Virtues and limitations". Proceedings of the Very Large Database Conference.
^Fundamentals of Software Architecture: An Engineering Approach. O'Reilly Media. 2020. ISBN 978-1492043454.
and 24 Related for: Compensating transaction information
between consistent states. There are two groups of systems where compensatingtransaction may be applied: 1. In the context of a database this is often easily...
commit and rollback mechanisms are not available or undesirable, a compensatingtransaction is often used to undo failed transactions and restore the system...
operation at the operating-system level). Another type of transaction is the compensatingtransaction. Transactions are available in most SQL database implementations...
distributed transaction is a database transaction in which two or more network hosts are involved. Usually, hosts provide transactional resources, while...
Microsoft Transaction Server (MTS) was software that provided services to Component Object Model (COM) software components, to make it easier to create...
collateral they obtain in the transaction. In a tri-party repo, a third party facilitates elements of the transaction, typically custody, escrow, monitoring...
but can also be employed with public companies (in a so-called PtP transaction – public-to-private). As financial sponsors increase their returns by...
extremely difficult and expensive to carry out successfully, that current compensating controls are likely to detect or limit the fraud, and that the possible...
payments can occur. When duties cannot be separated, compensating controls should be in place. Compensating controls are internal controls that are intended...
the economy and within itself. As such major economic theories such as transaction cost theory, managerial economics and behavioural theory of the firm...
A key condition for this outcome is that there are sufficiently low transaction costs in the bargaining and exchange process. This 'theorem' is commonly...
entity covered under the policy is called an insured. The insurance transaction involves the policyholder assuming a guaranteed, known, and relatively...
from a transaction and the costs imposed on the consumers as a consequence of being exposed to the transaction for which they are not compensated or charged...
debited to stock (an asset account). This will not affect the totals. Compensating errors are multiple unrelated errors that would individually lead to...
bank to a counterparty to compensate it for taking on the credit risk of that counterparty during the life of the transaction. CVA is one of a family of...
production as incurred by the original producer, and further costs of transaction as incurred by the acquirer over and above the price paid to the producer...
consumption activities that extend beyond the immediate parties involved in a transaction. Marshall's formulation of externalities laid the groundwork for subsequent...
the ledger. Each node has a copy of the ledger's entire transaction history. If a transaction violates the rules of the Bitcoin protocol, it is ignored...
merchant to lose money on the transaction. Merchants with very low average transaction prices or very high average transaction prices are more averse to accepting...
The Burgundian treaty of 1548 (ratified on 26 June), also known as the Transaction of Augsburg, settled the status of the Habsburg Netherlands within the...
letter to State of Florida legislative committees: "The Transaction Broker crafts a transaction by bringing a willing buyer and a willing seller together...
process higher monetary value time-critical transactions, have higher transaction costs, and have a smaller volume of payments. A faster settlement process...
usually compensated by the organizer for the use of his financial identity. While the straw borrower may have been lured into the transaction with the...
million. In 2012, the company acquired Ernest Health in a $400 million transaction. In March 2016, the company merged its investment in the operations of...