Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Commutativity-Based Concurrency Control for Abstract Data Types

Published: 01 December 1988 Publication History
  • Get Citation Alerts
  • Abstract

    Two novel concurrency algorithms for abstract data types are presented that ensure serializability of transactions. It is proved that both algorithms ensure a local atomicity property called dynamic atomicity. The algorithms are quite general, permitting operations to be both partial and nondeterministic. The results returned by operations can be used in determining conflicts, thus allowing higher levels of concurrency than otherwise possible. The descriptions and proofs encompass recovery as well as concurrency control. The two algorithms use different recovery methods: one uses intentions lists, and the other uses undo logs. It is shown that conflict relations that work with one recovery method do not necessarily work with the other. A general correctness condition that must be satisfied by the combination of a recovery method and a conflict relation is identified.

    References

    [1]
    {1} J. E. Allchin, "An architecture for reliable decentralized systems," Ph.D. dissertation, Georgia Instit. Technol., Sept. 1983. Available as Tech. Rep. GIT-ICS-83/23.
    [2]
    {2} C. Beeri et al., "A concurrency control theory for nested transactions," in Proc. Second Annu. ACM Symp. Principles Distributed Comput., ACM, Montreal, P.Q., Canada, Aug. 1983, pp. 45-62.
    [3]
    {3} P. A. Bernstein and N. Goodman, "Concurrency control in distributed database systems," ACM Comput. Surveys, vol. 13, pp. 185-221, June 1981.
    [4]
    {4} P. Bernstein, N. Goodman, and M.-Y. Lai, "Two part proof schema for database concurrency control," in Proc. Fifth Berkeley Workshop Distributed Data Management Comput. Networks, Feb. 1981, pp. 71-84.
    [5]
    {5} P. Bernstein, V. Hadzilacos, and N. Goodman, Concurrency Control and Recovery in Database Systems. Reading, MA: Addison-Wesley, 1987.
    [6]
    {6} K. P. Eswaran, J. N. Gray, R. A. Lorie, and I. L. Traiger, "The notions of consistency and predicate locks in a database system," Commun. ACM, vol. 19, pp. 624-633, Nov. 1976.
    [7]
    {7} J. Gray, "Notes on database operating systems," in Lecture Notes in Computer Science, Vol. 60: Operating Systems--An Advanced Course. Berlin, Germany: Springer-Verlag, 1978.
    [8]
    {8} J. N. Gray et al., "The recovery manager of the System R database manager, " ACM Comput. Surveys, vol. 13, pp. 223-242, June 1981.
    [9]
    {9} V. Hadzilacos, "A theory of reliability in database systems," J. ACM, vol. 35, pp. 121-145, Jan. 1988.
    [10]
    {10} M. Herlihy, N. Lynch, M. Merritt, and W. Weihl, "On the correctness of orphan elimination algorithms (preliminary report)," in Proc. Seventeenth Int. Symp. Fault-Tolerant Comput., IEEE, Pittsburgh, PA, July 1987.
    [11]
    {11} H. F. Korth, "Locking primitives in a database system," J. ACM, vol. 30, pp. 55-79, Jan. 1983.
    [12]
    {12} H. T. Kung and J. T. Robinson, "On optimistic methods for concurrency control," ACM Trans. Database Syst., vol. 6, pp. 213- 226, June 1981.
    [13]
    {13} B. Lampson, "Atomic transactions, " in Lecture Notes in Computer Science. Vol. 105: Distributed Systems: Architecture and Implementation , Goos and Hartmanis, Eds. Berlin, Germany: Springer-Verlag, 1981, pp. 246-265.
    [14]
    {14} B. Liskov and R. Schiefler, " Guardians and actions: Linguistic support for robust, distributed programs," ACM Trans. Programming Languages Syst., vol. 5, pp. 381-404, July, 1983.
    [15]
    {15} B. Liskov, R. Scheifler, E. F. Walker, and W. Weihl, "Orphan detection" (extended abstract), in Proc. 17th Int. Symp. Fault-Tolerant Comput., IEEE, July 1987.
    [16]
    {16} N. A. Lynch and M. R. Tuttle, "Hierarchical correctness proofs for distributed algorithms," Tech. Rep. MIT/LCS/TR-387, MIT Lab. Comput. Sci., Apr. 1987.
    [17]
    {17} N. A. Lynch and M. Merritt, "Introduction to the theory of nested transactions," Tech. Rep. MIT-LCS-TR-367, Massachusetts Instit. Technol., 1986. Appeared in Proc. 1986 Int. Conf. Database Theory.
    [18]
    {18} J. E. B. Moss, "Nested transactions: An approach to reliable distributed computing," Ph.D. dissertation, Massachusetts Instit. Technol., 1981. Available as Tech. Rep. MIT/LCS/TR-260.
    [19]
    {19} J. Moss, N. Griffeth, and M. Graham, "Abstraction in concurrency control and recovery management (revised)," Tech. Rep. COINS Tech. Rep. 86-20, Univ. Massachusetts, Amherst, May 1986.
    [20]
    {20} B. J. Nelson, "Remote procedure call," Ph.D. dissertation, Carnegie-Mellon Univ. Dep. Comput. Sci., May 1981, Available as CMU-CS- 81-119.
    [21]
    {21} P. E. O'Neil, "The escrow transactional method," ACM Trans. Database Syst., vol. 11, pp. 405-430, Dec. 1986.
    [22]
    {22} C. H. Papadimitriou, "The serializability of concurrent database updates," J. ACM, vol. 26, pp. 631-653, Oct. 1979.
    [23]
    {23} D. P. Reed, "Naming and synchronization in a decentralized computer system," Ph.D. dissertation, Massachusetts Instit. Technol., 1978. Available as Tech. Rep. MIT/LCS/TR-205.
    [24]
    {24} P. Schwarz, "Transactions on typed objects," Ph.D. dissertation, CMU, Dec. 1984. Available as Tech. Rep. CMU-CS-84-166.
    [25]
    {25} P. M. Schwarz and A. Z. Spector, "Synchronizing shared abstract types," ACM Trans. Comput. Syst., vol. 2, pp. 223-250, Aug. 1984.
    [26]
    {26} M. D. Skeen, "Crash recovery in a distributed database system," Ph.D. dissertation, Univ. California, Berkeley, May 1982. Available as UCB/ERL M82/45.
    [27]
    {27} A. Z. Spector et al., "Support for distributed transactions in the TABS prototype," IEEE Trans. Software Eng., vol. SE-11, pp. 520-530, June 1985.
    [28]
    {28} W. E. Weihl, "Specification and implementation of atomic data types," Ph.D. dissertation, Massachusetts Instit. Technol., 1984. Available as Tech. Rep. MIT/LCS/TR 314.
    [29]
    {29} W. E. Weihl, "Local atomicity properties: Modular concurrency control for abstract data types," ACM Trans. Programming Languages Syst., 1988, to be published.
    [30]
    {30} W. Weihl and B. Liskov, "Implementation of resilient, atomic data types," ACM Trans. Programming Languages Syst., Apr. 1985.
    [31]
    {31} G. Weikum, "A theoretical foundation of multi-level concurrency control," in Proc. Fifth ACM Symp. Principles Database Syst., 1986, pp. 31-42.
    [32]
    {32} G. Weikum and H.-J. Schek, "Architectural issues of transaction management in multi-layered systems," in Proc. Tenth Int. Conf. Very Large Data Bases, Singapore, Aug. 1984, pp. 454-465.

    Cited By

    View all
    • (2024)Automated Verification of Fundamental Algebraic LawsProceedings of the ACM on Programming Languages10.1145/36564088:PLDI(766-789)Online publication date: 20-Jun-2024
    • (2023)Ad Hoc Transactions through the Looking Glass: An Empirical Study of Application-Level Transactions in Web ApplicationsACM Transactions on Database Systems10.1145/363855349:1(1-43)Online publication date: 23-Dec-2023
    • (2022)Veracity: declarative multicore programming with commutativityProceedings of the ACM on Programming Languages10.1145/35633496:OOPSLA2(1726-1756)Online publication date: 31-Oct-2022
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image IEEE Transactions on Computers
    IEEE Transactions on Computers  Volume 37, Issue 12
    December 1988
    213 pages

    Publisher

    IEEE Computer Society

    United States

    Publication History

    Published: 01 December 1988

    Author Tags

    1. abstract data types
    2. commutativity
    3. concurrency algorithms
    4. concurrency control
    5. dynamic atomicity
    6. intentions lists
    7. local atomicity property
    8. nondeterministic
    9. parallel processing.
    10. partial
    11. recovery methods
    12. serializability
    13. undo logs

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Automated Verification of Fundamental Algebraic LawsProceedings of the ACM on Programming Languages10.1145/36564088:PLDI(766-789)Online publication date: 20-Jun-2024
    • (2023)Ad Hoc Transactions through the Looking Glass: An Empirical Study of Application-Level Transactions in Web ApplicationsACM Transactions on Database Systems10.1145/363855349:1(1-43)Online publication date: 23-Dec-2023
    • (2022)Veracity: declarative multicore programming with commutativityProceedings of the ACM on Programming Languages10.1145/35633496:OOPSLA2(1726-1756)Online publication date: 31-Oct-2022
    • (2022)GaccO - A GPU-accelerated OLTP DBMSProceedings of the 2022 International Conference on Management of Data10.1145/3514221.3517876(1003-1016)Online publication date: 10-Jun-2022
    • (2022)Opportunities for optimism in contended main-memory multicore transactionsThe VLDB Journal — The International Journal on Very Large Data Bases10.1007/s00778-021-00719-931:6(1239-1261)Online publication date: 11-Jan-2022
    • (2021)Version Reconciliation for Collaborative DatabasesProceedings of the ACM Symposium on Cloud Computing10.1145/3472883.3486980(473-488)Online publication date: 1-Nov-2021
    • (2021)Accuracy-Efficiency Trade-Offs and Accountability in Distributed ML SystemsProceedings of the 1st ACM Conference on Equity and Access in Algorithms, Mechanisms, and Optimization10.1145/3465416.3483289(1-11)Online publication date: 5-Oct-2021
    • (2021)Optimal Concurrency for List-Based SetsParallel Computing Technologies10.1007/978-3-030-86359-3_29(386-401)Online publication date: 13-Sep-2021
    • (2020)Opportunities for optimism in contended main-memory multicore transactionsProceedings of the VLDB Endowment10.14778/3377369.337737313:5(629-642)Online publication date: 19-Feb-2020
    • (2020)TardisTMProceedings of the Eleventh International Workshop on Programming Models and Applications for Multicores and Manycores10.1145/3380536.3380538(1-10)Online publication date: 22-Feb-2020
    • Show More Cited By

    View Options

    View options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media