On the Cost of Lock Inheritance in Lock Managers Supporting Nested Transactions

The exibility of nested transactions is generally provided at the expense of a more complex locking mechanism which must deal with expensive lock inheritance. In this paper, we give a solution for eecient lock inheritance. Our solution does not change the original nested transactions model but does revisit its locking rules using set-oriented semantics. This allows us to trade the cost of lock propagation at sub-transaction commit for a potentially more complex connict detection. Then we propose an eecient lock implementation which maintains the overhead of lock requests comparable to the traditional overhead in at transactions. We conducted a number of comparative measurements in order to evaluate our trade-oo. Our benchmarks show a cut oo from 7% to 60% of the global time spent in lock operations, which includes lock requests, locks inheritance and release of locks.

[1]  E. B. Moss,et al.  Nested Transactions: An Approach to Reliable Distributed Computing , 1985 .

[2]  R. G. Cattell Object Data Management: Object-Oriented and Extended , 1994 .

[3]  M. Profit,et al.  Supporting Parallelism in Engineering Databases by Nested Transactions , 1992 .

[4]  C. Mohan,et al.  ARIES/NT: A Recovery Method Based on Write-Ahead Logging for Nested Transactions , 1989, VLDB.

[5]  Hector Garcia-Molina,et al.  Modeling long-running activities as nested sagas , 1991 .

[6]  Marta Rukoz Hierarchical deablock detection for nested transactions , 2005, Distributed Computing.

[7]  J. Eliot B. Moss,et al.  Log-Based Recovery for Nested Transactions , 1987, VLDB.

[8]  Sharon E. Perl Distributed Commit Protocols for Nested Atomic Actions , 1988 .

[9]  Bernd Walter,et al.  Nested Transactions with Multiple Commit Points: An Approach to the Structuring of Advanced Database Applications , 1984, VLDB.

[10]  Andreas Reuter,et al.  Transaction Processing: Concepts and Techniques , 1992 .

[11]  Calton Pu,et al.  Design and Implementation of Nested Transactions in Eden , 1987, SRDS.

[12]  Johanna D. Moore,et al.  A nested transaction mechanism for LOCUS , 1983, SOSP '83.

[13]  Barbara Liskov,et al.  Implementation of Argus , 1987, SOSP '87.

[14]  Hans-Jörg Schek,et al.  Architectural Issues of Transaction Management in Multi-Layered Systems , 1984, VLDB.

[15]  Patrick Valduriez,et al.  Principles of Distributed Database Systems , 1990 .

[16]  Stuart M. Wheater,et al.  Implementing fault-tolerant distributed applications using objects and multi-coloured actions , 1990, Proceedings.,10th International Conference on Distributed Computing Systems.

[17]  Barbara Liskov,et al.  Distributed programming in Argus , 1988, CACM.

[18]  Kurt Rothermel,et al.  Concurrency control issues in nested transactions , 2005, The VLDB Journal.

[19]  Lily B. Mummert,et al.  Camelot and Avalon: A Distributed Transaction Facility , 1991 .