Model Checking the Two-Phase Commit Protocol for Distributed Database Systems
Yi Yu, Naipeng Dong, Jun Pang et al. · Lecture notes in computer science · 2026
Cited by 0Open access
Read the abstract, see who wrote it and who cites it, and get the citation in APA, MLA, Chicago or Harvard.
About 788 papers for “two-phase commit”
Yi Yu, Naipeng Dong, Jun Pang et al. · Lecture notes in computer science · 2026
Cited by 0Open access
Oliver Costich, Ira S. Moskowitz · 2002
The authors discuss how a noisy storage channel arises in the two phase commit protocol. The analysis is done through Shannon's information theory. They discuss how large the channel is and offer suggestions on how to diminish the channel capacity.< <ETX xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">></ETX>
Cited by 14
P. Krishna Reddy, Masaru Kitsuregawa · 1998
In distributed database systems (DDBSs), a transaction blocks during two-phase commit (2PC) processing if the coordinator site fails and at the same time some participant site has declared itself ready to commit the transaction. The blocking phenomena reduces availability of the system since the blocked transactions keep all the resources until they receive the final command from the coordinator after its recovery. To remove the blocking problem in 2PC protocol, the three phase commit (3PC) protocol was proposed. Although 3PC protocol eliminates the blocking problem, it involves an extra round of message transmission, which further degrades the performance of DDBSs. We propose a backup commit (BC) protocol by including a backup phase to 2PC protocol. In this, one backup site is attached to each coordinator site. After receiving responses from all participants in the first phase, the coordinator communicates its decision only to its backup site in the backup phase. Afterwards, it sends a final decision to participants. When blocking occurs due to the failure of the coordinator site, the participant sites consult the coordinator's backup site and follow termination protocols. In this way, BC protocol achieves a non-blocking property in most of the coordinator site failures. However, in the worst case, the blocking can occur in BC protocol when both the coordinator and its backup site fail simultaneously. If such a rare case occurs, the participants wait until the recovery of either the coordinator site or the backup site. BC protocol suits DDBS environments in which sites fail frequently and messages take longer delivery time. Through simulation experiments it is shown that BC protocol exhibits superior throughput and response time performance over 3PC protocol and performs closely with 2PC protocol.
Cited by 25
Ghewari M.U, D. K. · International Journal of Computer Applications · 2017
The requirements of high band width data spectrum and its efficient high speed transmission is the challenge which is exponentially rising due to the automation of all kinds of electrical and electronic gadgets. Currently most of the local area networks are adhoc due to which connectivity is a serious problem. The currently used DTN has several problems of call drop and data failure. Recently two phase commit protocol has been proposed which has high potential to overcome the problems of call drop. Two phase commit protocol on deployment in real time scenario has been analyzed for the DTN networks and we found most astonishing results in the improvement of the routing paradigm as compared to DSR and AODV protocols for routing throughput and for average end to end delay. This paper analyzes two phase commit protocol running in two different phases on deploying the DTN wireless scenario for heterogeneous network infrastructure and measures the effects successfully.
Cited by 3Open access
Zhiqiang Du, Wendong Zhang, Liangxin Liu et al. · Scientific Reports · 2024
Sharding blockchain is a technology designed to improve the performance and scalability of traditional blockchain systems. However, due to its design, communication between shards depends on shard leaders for transmitting information, while shard members are unable to detect communication activities between shards. Consequently, Byzantine nodes can act as shard leaders, engaging in malicious behaviors to disrupt message transmission. To address these issues, we propose the Cross shard leader accountability protocol (CSLAP), which is based on the two-phase atomic commit protocol (2PC). CSLAP employs byzantine broadcast/byzantine agreement (BB/BA) for Byzantine fault tolerance to generate cross-shard leader re-election certificates, thereby reducing the impact of shard leaders on inter-shard communication. It also uses Round-robin mechanism to facilitate leader re-election. Moreover, we demonstrate that CSLAP maintains the security and liveness of sharding transactions while providing lower communication latency. Finally, we conducted an experimental comparison between CSLAP and other cross-shard protocols. The results indicate that CSLAP exhibits superior performance in reducing communication latency.
Cited by 1Open access
Traverson, Bruno · OpenGrey (Institut de l'Information Scientifique et Technique) · 1991
Cited by 0Open access
Iwaniak, M., Khadzhynov, W. · The scientific electronic library of periodicals of the National Academy of Sciences of Ukraine (National Academy of Sciences of Ukraine) · 2013
In this work the usage of Coloured Petri Net for modeling and simulation of Two Phase Commit protocol with multiple cohorts is presented. Brief overview of Coloured Petri Nets is introduced. Two-Phase Commit protocol is briefly described than introduced as Coloured Petri Net model. By initial marking adaptation a few scenarios for 2PC protocol are presented with the use of the reachability analysis.
Cited by 0Open access
Halit Uyanık, Tolga Ovatman · International Journal of Distributed Systems and Technologies · 2021
Representing an algorithmic workflow as a state machine is a frequently used technique in distributed systems. Replicating a state machine in a fault tolerant way is one of the main application areas under this context. When implementing a replicated state machine, a crucial problem is to maintain consistency among replicas that might handle various different requests arriving at each different replica. This problem requires maintaining a single consistent ordering of the distributed requests handled separately by replicas. Basic consensus protocols such as two-phase commit (2PC) can be used to maintain consistency between replicas whenever a request is to be processed. In this study, the authors modify 2PC protocol to take advantage of basic properties of a state machine and detect possible write conflicts earlier. The experiments on distributed cloud environments show that the modified 2PC protocol increases the throughput and decreases wasted write operations by a significant amount.
Cited by 0
Arthur Whitney, Dennis Shasha, Stevan Apter · 1997
Imagine an application environment in which subsecond response to thousands of events gives the user a distinct competitive advantage, yet transactional guarantees are important. Imag-ine also that the data ts comfortably into a few gigabytes of Random Access Memory. These attributes characterize many nancial trading applications. Which engine should one use in such a case? IBM FastPath, Sybase, Oracle, or Object Store? We argue that an unconventional approach is called for: we use a list-based language called K having optimized support for bulk array operators, and that integrates networking, and a graphical user interface. Locking is unnecessary when single-threading such applications because the data ts into memory, obviating the need to go to disk except for logging purposes. Multithreading can be handled for OLTP applications by analyzing the arguments to transactions. The result is a (private, size-reduced) TPC/B benchmark that achieves 25,000 transactions per second with full recoverability and TCP/IP overhead on an (167 Megahertz) UltraSparc I. Further, hot disaster recovery can be done with far less overhead than required by two phase commit by using a sequential state machine approach. We show how to exploit multiple processors without complicating the language or our basic framework. 1 A Brief Description of the K Language K is list-based language integrating bulk operators, interprocess communication, and graphical user interface facilities, designed and implemented by Arthur Whitney. It is extremely concise. For example, a simple spreadsheet has been implemented in about 100 characters, including the graphical user interface, as illustrated in Figure 1. Partly supported by NSF grants #IRI-9224601 and #IRI-9531554
Cited by 0
Quanqing Xu, Chen Qian, Chuanhui Yang et al. · ArXiv.org · 2026
Modern distributed databases face challenges in achieving transactional consistency across distributed partitions. Traditional two-phase commit (2PC) protocols incur high coordination overhead and latency, and require complex recovery for dynamic partition transfers. This paper introduces a novel tree-shaped 2PC framework for OceanBase that leverages single-machine log streams to address these challenges through three innovations. First, we propose log streams as atomic participants, replacing partition-level coordination. By treating each log stream as the commit unit, a transaction spanning $N$ co-located partitions interacts with one participant, reducing coordination overhead by orders of magnitude (e.g., 99 percent reduction for $N=100$). Second, we design a tree-shaped 2PC protocol with coordinator-rooted DAG topology that dynamically handles partition transfers by recursively constructing commit trees. When a partition migrates during a transaction, the protocol embeds migration contexts as leaf nodes, eliminating explicit participant list updates, resolving circular dependencies, and ensuring linearizable commits under topology changes. Third, we introduce prepare-unknown and trans-unknown states to prevent consistency violations when participants lose context. These states signal uncertainty during retries, avoiding erroneous aborts from so-called lying participants while isolating users from ambiguity. Experimental evaluation demonstrates performance approaching that of single-machine transactions, with reduced latency and bandwidth consumption, validating the framework's effectiveness for modern distributed databases.
Cited by 0Open access
Quanqing Xu, Chen Qian, Chuanhui Yang et al. · arXiv (Cornell University) · 2026
Modern distributed databases face challenges in achieving transactional consistency across distributed partitions. Traditional two-phase commit (2PC) protocols incur high coordination overhead and latency, and require complex recovery for dynamic partition transfers. This paper introduces a novel tree-shaped 2PC framework for OceanBase that leverages single-machine log streams to address these challenges through three innovations. First, we propose log streams as atomic participants, replacing partition-level coordination. By treating each log stream as the commit unit, a transaction spanning $N$ co-located partitions interacts with one participant, reducing coordination overhead by orders of magnitude (e.g., 99 percent reduction for $N=100$). Second, we design a tree-shaped 2PC protocol with coordinator-rooted DAG topology that dynamically handles partition transfers by recursively constructing commit trees. When a partition migrates during a transaction, the protocol embeds migration contexts as leaf nodes, eliminating explicit participant list updates, resolving circular dependencies, and ensuring linearizable commits under topology changes. Third, we introduce prepare-unknown and trans-unknown states to prevent consistency violations when participants lose context. These states signal uncertainty during retries, avoiding erroneous aborts from so-called lying participants while isolating users from ambiguity. Experimental evaluation demonstrates performance approaching that of single-machine transactions, with reduced latency and bandwidth consumption, validating the framework's effectiveness for modern distributed databases.
Cited by 0Open access
Diana Howard, Henry Detmold, Katrina Falkner et al. · Lecture notes in computer science · 2003
Cited by 1
M.L. Liu, Divyakant Agrawal, Amr El Abbadi · 2002
Much of the existing literature on the two phase commit protocol is restricted to discussing and analyzing the protocol (and its variants) in the absence of failure. Very little, especially in quantitative terms, has been written about its performance in the presence of site failures. We use a simulation test bed of a distributed database system to quantify the differences in the performances of four 2PC protocols (the generic 2PC, presumed commit, presumed abort, and early prepare). Our study covers both the no-failure case and the case of site failures. We present a number of interesting experimental results. One is that the performance of these protocols is highly dependent on the message-processing latency at the transaction coordinator site. Another is that the presumed abort protocol does not necessarily yield better performance in the presence of site failures.< <ETX xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">></ETX>
Cited by 18
Kishore Subramanya Hebbar · The American Journal of Engineering And Technology · 2025
As financial institutions increasingly migrate their core platforms to microservices-based architectures, the challenge of managing distributed transactions has gained critical importance. Banking APIs typically require atomicity and consistency across multiple services—such as account management, fraud detection, notifications, and audit trails all of which operate independently with isolated data stores. In such an ecosystem, ensuring consistency, performance, and fault tolerance becomes a balancing act that traditional and modern transaction patterns attempt to resolve differently. This paper explores and contrasts two dominant approaches to distributed transaction management: the Two-Phase Commit (2PC) protocol and the Saga Pattern, particularly in the context of mission-critical banking applications. 2PC has long been considered the gold standard for ensuring atomicity and strong consistency in distributed systems. However, its blocking nature, reliance on a centralized coordinator, and vulnerability to network partitions make it less suitable for high-throughput, globally distributed systems common in modern fintech platforms. On the other hand, the Saga Pattern, an eventual consistency model that orchestrates a sequence of local transactions with compensating rollback operations—offers better fault tolerance and non-blocking behavior. Yet, its trade-offs include the complexity of compensating logic, lack of strict ACID guarantees, and potential for data anomalies if not carefully implemented. To ground the discussion in real-world reliability needs, I introduce a chaos engineering-based simulation that demonstrates the behavior of both 2PC and Saga under controlled failure scenarios, such as inter-service latency spikes and partial service outages. We benchmark recovery times, resource locking, system availability, and data reconciliation behavior using a representative banking microservice architecture deployed in a containerized environment. My findings reveal that Saga outperforms 2PC in terms of availability and fault recovery, making it suitable for user-facing, latency-sensitive operations. However, 2PC remains superior for operations demanding immediate consistency and compliance with strict audit requirements, such as core ledger updates. Based on this analysis, we propose a hybrid transaction strategy that applies 2PC to core financial operations and Saga to surrounding auxiliary services, striking a balance between performance and correctness. This study offers practical design insights for architects building resilient, scalable, and regulation-compliant financial systems. It also highlights the need for adaptive orchestration platforms capable of dynamically selecting transaction models based on context and SLA requirements.
Cited by 0Open access
Sushil Jajodia, Catherine D. McCollum · Dependable computing and fault-tolerant systems · 1993
Cited by 13
Xiai Yan, Qiang Fan, Jinmin Yang - et al. · International Journal of Digital Content Technology and its Applications · 2011
Cited by 1
Uyanık, Halit · Istanbul Technical University Academic Open Archive (Istanbul Technical University) · 2022
Cited by 0
M. Iwaniak, W. Khadzhynov · 2013
In this work the usage of Colored Petri Net for modeling and simulation of Two Phase Commit protocol with multiple cohorts is presented. Brief overview of Colored Petri Nets is introduced. Two-Phase Commit protocol is briefly described than introduced as Colored Petri Net model. By initial marking adaptation a few scenarios for 2PC protocol are presented with the use of the reachability analysis.
Cited by 1
Andi Liu, Yizhong Liu, Qianhong Wu et al. · IEEE Transactions on Information Forensics and Security · 2024
Due to the promising scalability property, sharding technology has gained widespread attention. It improves the transaction throughput of blockchain systems but also introduces cross-shard transactions. Current two-phase commit (2PC) protocols process different cross-shard transactions sequentially, resulting in significant system overhead and low throughput. Besides, current sharding blockchains rely on Byzantine fault tolerance (BFT) as a black box, lacking specific designs to efficiently handle cross-shard proposals. Moreover, cross-shard communication complexity is high, and transaction processing parallelism is low. In this paper, we first propose P-2PC, a general framework to process cross-shard transactions of different phases in a pipelined way, suitable for most sharding blockchains. Further, we design Cherubim with improved quadruple 2PC, 4P-2PC. By combining P-2PC with an intra-shard pipelined BFT, 4P-2PC achieves both intra-shard and cross-shard pipelined processing. Combined with a newly designed batch processing method, each shard processes 4 transaction batches simultaneously through 1 round of calculation and communication, compared to 4 rounds in previous work. In particular, Cherubim seamlessly integrates a multi-signature algorithm supporting further aggregation, reducing communication complexity. Furthermore, we evaluate our work through theoretical analysis and implementation, proving that Cherubim has a communication complexity linear to the node number. We also propose horizontal and vertical consensus parallelism degrees to evaluate the parallelism ability. Compared to the state-of-the-art solutions, the evaluation demonstrates that Cherubim achieves a transaction throughput improvement of at least 2.28×.
Cited by 50
Maddirala Narasimha Rao, G. Sreenivasa Reddy, Y. Dasradh Ram Reddy et al. · 2016
In distributed transactional database systems deployed over cloud servers, entities cooperate to form proofs of authorizations that are justified by collections of certified credentials. These proofs and credentials may be evaluated and collected over extended time periods under the risk of having the underlying authorization policies or the user credentials being in inconsistent states. It therefore becomes possible for policy-based authorization systems to make unsafe decisions that might threaten sensitive resources. In this research paper, we highlight the criticality of the problem. We then define the notion of trusted transactions when dealing with proofs of authorization. Accordingly, we propose several increasingly stringent levels of policy consistency constraints, and present different enforcement approaches to guarantee the trustworthiness of transactions executing on cloud servers. We propose a Two-Phase Validation Commit protocol as a solution, which is a modified version of the basic Two-Phase Validation Commit protocols. We finally analyze the different approaches presented using both analytical evaluation of the overheads and simulations to guide the decision makers to which approach to use. KEYWORDS: Two-Phase Validation Commit; Byzantine failure; Transaction Manager(TM); Certificate Authorities (CAs)
Cited by 0