Abstract
Deadlock detection, which is fairly well-understood for the traditional transaction model used for concurrency control to databases, needs to be revisited when dealing with advanced transaction models. This is because a transaction in these models is organized as a collection of tasks; specific decisions (such as commit or abort) about a task may be based on the outcome or status of other tasks in the same transaction. Although this gives flexibility to the application programmer, a set of concurrent transactions may contain two types of dependencies: data and transaction dependencies. Commit and abort dependencies specifying constraints on transaction termination order are well-known examples of transaction dependencies. Data dependencies arise when transactions concurrently access common data items under conflicting modes. In this paper, we show that in the face of these dependencies, deadlocks may arise that the conventional deadlock detection algorithms are not able to detect. We show that transaction waiting states are characterized by AND-OR graphs and propose an algorithm for detecting deadlocks in these graphs. This algorithm has a computational complexity linear in the number of nodes and edges of the AND-OR graphs. We prove the correctness of our algorithm by characterizing deadlocks in a subclass of Petri nets equivalent to AND-OR graphs.
Partially supported by the Italian M.U.R.S.T.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
A. Biliris, S. Dar, N. Gehani, H. V. Jagadish, and K. Ramamritham. Asset: A system for supporting extended transactions. In Proceedings of the ACM SIGMOD International Conference on Management of Data, Minneapolis, Minnesota, May 1994.
S. Jajodia et al., editor. Advanced Transaction Models and Architectures. Kluwer Academic Publ., 1997.
D. Georgakopoulos, M.F. Hornick, and A.P. Sheth. An Overview of Workflow Management: from Process Modeling to Workflow Automation Infrastructure. Distributed and Parallel Databases, V.3, N.2, pp.119–153, April 1995.
J. Gray and A. Reuter. Transaction Processing: Concepts and Techniques. Morgan Kaufmann Publishers. San Mateo (Calif.), 1993.
T. Hermann, and K. Chandy. A distributed procedure to detect AND/OR dead-lock. TR LCS-8301, Dept. of Computer Science, University of Texas, Austin, 1983.
E. Knapp. Deadlock Detection in Distributed Databases. ACM Computing Surveys, 19(4):303–328, December 1987.
L. Mancini, I. Ray, E. Bertino, and S. Jajodia. Flexible Commit Protocols for Advanced Transaction Processing. In Advanced Transaction Models and Architectures, S. Jajodia and L. Kerschberg, eds., Kluwer, 91–124, 1997.
J. Eliot B. Moss. Nested Transactions: An Approach to Reliable Distributed Programming. The MIT Press. Cambridge (Massachusetts), 1985.
T. Murata. Petri nets: properties, analysis, and applications. Proceedings of the IEEE, 77(4):541–580, April 1989.
R. Obermarck. Distributed Deadlock Detection Algorithm. ACM Transactions on Database Systems, 7(2):187–208, June 1982.
K. Ramamritham and P. K. Chrysanthis. A Taxonomy of Correctness Criteria in Database Applications. The VLDB Journal, 5(1):64–84, January 1996.
Aidong Zhang, Marian Nodine, Bharat Bhargava, and Omran Bukhres. Ensuring Relaxed Atomicity for Flexible Transactions in Multidatabase Systems. In Proceedings of the ACM SIGMOD International Conference on Management of Data, pages 67–78, May 1994.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bertino, E., Chiola, G., Mancini, L.V. (1998). Deadlock Detection in the Face of Transaction and Data Dependencies. In: Desel, J., Silva, M. (eds) Application and Theory of Petri Nets 1998. ICATPN 1998. Lecture Notes in Computer Science, vol 1420. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-69108-1_15
Download citation
DOI: https://doi.org/10.1007/3-540-69108-1_15
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-64677-8
Online ISBN: 978-3-540-69108-2
eBook Packages: Springer Book Archive