A Theory of Transactions on Recoverable Search Trees

  • Seppo Sippu
  • Eljas Soisalon-Soininen
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1973)


We consider transactions running on a database that consists of records with unique totally-ordered keys and is organized as a sparse primary search tree such as a B-tree index on disk storage. We extend the classical read-write model of transactions by considering inserts, deletes and key-range scans and by distinguishing between four types of transaction states: forward-rolling, committed, backward-rolling, and rolled- back transactions. A search-tree transaction is modelled as a two-level transaction containing structure modifications as open nested subtransactions that can commit even though the parent transaction aborts. Isolation conditions are defined for search-tree transactions with nested structure modifications that guarantee the structural consistency of the search tree, a required isolation level (including phantom prevention) for database operations, and recoverability for structure modifications and database operations.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    G. Alonso, R. Vingralek, D. Agrawal, Y. Breitbart, A. El Abbadi, H.-J. Schek, and G. Weikum. Unifying concurrency control and recovery of transactions. Information Systems 19 (1994), 101–115.CrossRefGoogle Scholar
  2. 2.
    R. Bayer and M. Schkolnick. Concurrency of operations on B-trees. Acta Informatica 9 (1977), 1–21.zbMATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    H. Berenson, P. Bernstein, J. Gray, J. Melton, E. O’Neil, and P. O’Neil. A critique of ANSI SQL isolation levels. In: Proc. of the 1995 ACM SIGMOD Internat. Conf. on Management of Data, 1–10.Google Scholar
  4. 4.
    P. H. Bernstein, V. Hadzilacos, and N. Goodman. Concurrency Control and Recovery in Database Systems, Addison-Wesley, 1987.Google Scholar
  5. 5.
    J. Gray and A. Reuter. Transaction Processing: Concepts and Techniques, Morgan Kaufmann, 1993.Google Scholar
  6. 6.
    D. Lomet. Key range locking strategies for improved concurrency. In: Proc. of the 19th VLDB Conference, 1993, 655–664.Google Scholar
  7. 7.
    P. L. Lehman and S. B. Yao. Efficient locking for concurrent operations on B-trees. ACM Trans. Database Systems 6 (1981), 650–670.zbMATHCrossRefGoogle Scholar
  8. 8.
    D. Lomet. MLR: a recovery method for multi-level systems. In: Proc. of the 1992 ACM SIGMOD Internat. Conf. on Management of Data, 185–194.Google Scholar
  9. 9.
    D. Lomet. Advanced recovery techniques in practice. In: Recovery Mechanisms in Database Systems (V. Kumar and M. Hsu, eds), Prentice Hall, 1998, 697–710.Google Scholar
  10. 10.
    D. Lomet and B. Salzberg. Access method concurrency with recovery. In: Proc. of the 1992 ACM SIGMOD Internat. Conf. on Management of Data, 351–360.Google Scholar
  11. 11.
    D. Lomet and B. Salzberg. Concurrency and recovery for index trees. The VLDB Journal 6 (1997), 224–240.CrossRefGoogle Scholar
  12. 12.
    C. Mohan. Concurrency control and recovery methods for B +-tree indexes: ARIES/KVL and ARIES/IM. In: Performance of Concurrency Control Mechanisms in Centralized Database Systems (V. Kumar, ed), Prentice Hall, 1996, 248–306.Google Scholar
  13. 13.
    C. Mohan. ARIES/KVL: a key-value locking method for concurrency control of multiaction transactions operating on B-tree indexes. In: Proc. of the 16th VLDB Conference, 1990, 392–405.Google Scholar
  14. 14.
    C. Mohan, D. Haderle, B. Lindsay, H. Pirahesh, and P. Schwartz. ARIES: a transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging. ACM Trans. Database Systems 17 (1992), 94–162.CrossRefGoogle Scholar
  15. 15.
    C. Mohan and F. Levine. ARIES/IM: an efficient and high concurrency index management method using write-ahead logging. In: Proc. of the 1992 ACM SIGMOD Internat. Conf. on Management of Data, 371–380.Google Scholar
  16. 16.
    Y. Sagiv. Concurrent operations on B*-trees with overtaking. J. Computer and System Sciences 33 (1986), 275-296.Google Scholar
  17. 17.
    H-J. Schek, G. Weikum and H. Ye. Towards a unified theory of concurrency control and recovery. In: Proc. of the 12th ACM SIGACT-SIGMOD-SIGART Symp. on Principles of Database Systems, 1993, 300–311.Google Scholar
  18. 18.
    D. Shasha and N. Goodman. Concurrent search structure algorithms. ACM Trans. Database Systems 13 (1988), 53–90.zbMATHCrossRefGoogle Scholar
  19. 19.
    R. Vingralek, H. Hasse-Ye, Y. Breitbart and H.-J. Schek. Unifying concurrency control and recovery of transactions with semantically rich operations. Theoretical Computer Science 190 (1998), 363–396.zbMATHCrossRefMathSciNetGoogle Scholar
  20. 20.
    G. Weikum. Principles and realization strategies of multi-level transaction management. ACM Trans. Database Systems 16 (1991), 132–180.CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Seppo Sippu
    • 1
  • Eljas Soisalon-Soininen
    • 2
  1. 1.Department of Computer ScienceUniversity of HelsinkiUniversity of HelsinkiFinland
  2. 2.Department of Computer Science and EngineeringHelsinki University of TechnologyHUTFinland

Personalised recommendations