Specification of Concurrency Control in Persistent Programming Languages

  • N. De Francesco
  • G. Vaglini
  • L. V. Mancini
  • A. Pereira Paz
Conference paper
Part of the Workshops in Computing book series (WORKSHOPS COMP.)


This paper proposes a mechanism for object-oriented database languages which allows the specification of as much concurrency among method executions as a user needs. This proposal goes towards the use of semantic information about methods and it allows a user to specify some kind of observational independence among methods by means of a construct called concurrent behaviour. It is shown that, as far as such method commutativity is concerned, there is no direct relation between super-types and sub-types, that is, a sub-type can be either “less concurrent” or “more concurrent” than its super-type. The notion of correctness for interleaved executions of transactions is presented taking into account the concurrent behaviour of objects, and a possible implementation of the proposed construct is outlined.


Concurrency Control Commutativity Rule Abstract Data Type Concurrent Behaviour Method Execution 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Skarra A.H., Zdonik S.B., “Concurrency Control and Object-Oriented Databases”, in Object Oriented Concepts, Databases, and Applications, Kim W. and Lochovsky F.H. eds., ACM Press, (1989), pp. 395–421.Google Scholar
  2. 2.
    Garcia-Molina H., “Using Semantic Knowledge for Transaction Processing in a Distributed Database”, ACM Trans. on Database Systems, 8, 2 (June 1983), pp. 186–213.CrossRefGoogle Scholar
  3. 3.
    Korth, H. F., Speegle, G. D., “Formal model of correctness without Serialisability”, SIGMOD-ACM, June 1–3, 1988, pp. 379–386.CrossRefGoogle Scholar
  4. 4.
    Schwarz P.M. and Spector A.Z., “Synchronizing Shared Abstract Types”, ACM ToCS, 2, 3 (Aug. 1984), pp. 223–250.CrossRefGoogle Scholar
  5. 5.
    Weihl W.E., “Local Atomicity Properties: Modular Concurrency Control for Abstract Data Types”, ACM ToPLaS, 11, 2 (April 1989), pp. 249–283.CrossRefGoogle Scholar
  6. 6.
    Herlihy, M.P., Weihl, W.E., “Hybrid Concurrency Control for Abstract Data Types”, Journal of Computer and System Science 43, 25–61, 1991.CrossRefMATHGoogle Scholar
  7. 7.
    De Francesco, N., Vaglini, G.,“An axiomatic approach to Concurrency Control”, submitted for publication.Google Scholar
  8. 8.
    Bondavalli, A., De Francesco, N., Latella, D., Vaglini, G., “Shared abstract data types: an algebraic methodology for their specification”, MFDBS-89, LNCS 364, Budapest, June 26-July 1, 1989, pp. 53–67.Google Scholar
  9. 9.
    Albano, A., Ghelli, G. and Orsini, R “Objects for a database programming language”, 3rd International Workshop on Database Programming Languages, Napflion, Greece, August 1991.Google Scholar
  10. 10.
    Papadimitriou C.H., “The Theory of Database Concurrency Control”, Computer Science Press, Oakville, Maryland, 1986.MATHGoogle Scholar
  11. 11.
    Bernstein P.A., Hadzilacos V. and Goodman N., “Concurrency Control and Recovery in Database Systems”, Addison-Wesley, Reading, Mass 1987.Google Scholar
  12. 12.
    Goldberg A. and Robson D., “Smalltalk-80: the language and its implementation”, Addison-Wesley, 1983.MATHGoogle Scholar
  13. 13.
    Korth, H. F., “Locking primitives in a Database System”, Journal ACM, 30, 1 (Jan. 1983), pp. 55–79.CrossRefMATHMathSciNetGoogle Scholar

Copyright information

© British Computer Society 1993

Authors and Affiliations

  • N. De Francesco
    • 1
  • G. Vaglini
    • 1
  • L. V. Mancini
    • 2
  • A. Pereira Paz
    • 3
  1. 1.Dipartimento di Ingegneria dell’InformazionePisaItaly
  2. 2.Dipartimento di InformaticaPisaItaly
  3. 3.Engineering S.P.A.PisaItaly

Personalised recommendations