Partial strictness in two-phase locking

  • Eljas Soisalon-Soininen
  • Tatu Ylönen
Contributed Papers Concurrency Control
Part of the Lecture Notes in Computer Science book series (LNCS, volume 893)

Abstract

Two-phase locking is a standard method for managing concurrent transactions in database systems. In order to guarantee good recovery properties, two-phase locking should be strict, meaning that locks can be released only after the transaction's commit or abort. In this paper we show that even exclusive locks can be released immediately after the commit request has arrived, without sacrificing any important recovery properties. This optimization is especially useful if the commit operation takes much time compared with the other actions, as for main-memory databases, or if the commits are performed in batches.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    P. A. Bernstein, V. Hadzilacos, and N. Goodman. Concurrency Control and Recovery in Database Systems. Addison-Wesley, 1987.Google Scholar
  2. 2.
    D. J. DeWitt, R. H. Katz, F. Olken, L. D. Shapiro, M. R. Stonebraker, and D. Wood. Implementation techniques for main memory database systems. In ACM SIGMOD, pages 1–8, 1984.Google Scholar
  3. 3.
    M. H. Eich. A classification and comparison of main memory database recovery techniques. In Data Engineering, pages 332–339, 1987.Google Scholar
  4. 4.
    K. P. Eswaran, J. Gray, R. A. Lorie, and I. L. Treiger. The notions of consistency and predicate locks in a database system. Communications of the ACM, 19(11):624–633, 1976.Google Scholar
  5. 5.
    D. Gawlick and D. Kinkade. Varieties of concurrency control in IMS/VS Fast Path. IEEE Database Engineering, 4:63–70, 1985.Google Scholar
  6. 6.
    J. Gray and A. Reuter. Transaction Processing: Concepts and Techniques. Morgan Kaufmann, 1993.Google Scholar
  7. 7.
    G. Lausen, E. Soisalon-Soininen, and P. Widmayer. On the power of safe locking. Journal of Computer and System Sciences, 40(2):269–288, 1990.Google Scholar
  8. 8.
    C.-C. Liu and T. Minoura. Effect of update merging on reliable storage performance. In Data Engineering, pages 208–213, 1986.Google Scholar
  9. 9.
    C. Mohan, D. Haderle, B. Lindsay, H. Pirahesh, and P. Schwarz. ARIES: A transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging. ACM Transactions on Database Systems, 17(1):94–162, 1992.Google Scholar
  10. 10.
    C. Papadimitriou. The Theory of Database Concurrency Control. Computer Science Press, 1986.Google Scholar
  11. 11.
    Y. Raz. The principle of commitment ordering. In Very Large Data Bases, pages 292–312, 1992.Google Scholar
  12. 12.
    O. Wolfson. An algorithm for early unlocking of entities in database transactions. Journal of Algorithms, 7:146–156, 1986.MathSciNetGoogle Scholar
  13. 13.
    M. Yannakakis. A theory of safe locking policies in database systems. Journal of the Association for Computer Machinery, 29(3):718–740, 1982.Google Scholar
  14. 14.
    T. Ylonen. Shadow Paging Is Feasible. Licentiate's thesis, Department of Computer Science, Helsinki University of Technology, 1994.Google Scholar

Copyright information

© Springer-Verlag 1995

Authors and Affiliations

  • Eljas Soisalon-Soininen
    • 1
  • Tatu Ylönen
    • 1
  1. 1.Department of Computer ScienceHelsinki University of TechnologyEspooFinland

Personalised recommendations