scispace - formally typeset
Search or ask a question
Journal ArticleDOI

The notions of consistency and predicate locks in a database system

01 Nov 1976-Communications of The ACM (ACM)-Vol. 19, Iss: 11, pp 624-633
TL;DR: It is argued that a transaction needs to lock a logical rather than a physical subset of the database, and an implementation of predicate locks which satisfies the consistency condition is suggested.
Abstract: In database systems, users access shared data under the assumption that the data satisfies certain consistency constraints. This paper defines the concepts of transaction, consistency and schedule and shows that consistency requires that a transaction cannot request new locks after releasing a lock. Then it is argued that a transaction needs to lock a logical rather than a physical subset of the database. These subsets may be specified by predicates. An implementation of predicate locks which satisfies the consistency condition is suggested.

Content maybe subject to copyright    Report

Citations
More filters
Journal ArticleDOI
TL;DR: This paper defines linearizability, compares it to other correctness conditions, presents and demonstrates a method for proving the correctness of implementations, and shows how to reason about concurrent objects, given they are linearizable.
Abstract: A concurrent object is a data object shared by concurrent processes. Linearizability is a correctness condition for concurrent objects that exploits the semantics of abstract data types. It permits a high degree of concurrency, yet it permits programmers to specify and reason about concurrent objects using known techniques from the sequential domain. Linearizability provides the illusion that each operation applied by concurrent processes takes effect instantaneously at some point between its invocation and its response, implying that the meaning of a concurrent object's operations can be given by pre- and post-conditions. This paper defines linearizability, compares it to other correctness conditions, presents and demonstrates a method for proving the correctness of implementations, and shows how to reason about concurrent objects, given they are linearizable.

3,396 citations


Cites background from "The notions of consistency and pred..."

  • ...Strict serializability is ensured by some synchronization mechanisms, such as two-phase locking [12], but not by others, such as multiversion timestamp schemes [41], or schemes that provide high levels of availability in the presence of network partitions [22]....

    [...]

Journal ArticleDOI
David Gelernter1
TL;DR: This work is particularly concerned with implementation of the dynamic global name space that the generative communication model requires, and its implications for systems programming in distributed settings generally and on integrated network computers in particular.
Abstract: Generative communication is the basis of a new distributed programming langauge that is intended for systems programming in distributed settings generally and on integrated network computers in particular. It differs from previous interprocess communication models in specifying that messages be added in tuple-structured form to the computation environment, where they exist as named, independent entities until some process chooses to receive them. Generative communication results in a number of distinguishing properties in the new language, Linda, that is built around it. Linda is fully distributed in space and distributed in time; it allows distributed sharing, continuation passing, and structured naming. We discuss these properties and their implications, then give a series of examples. Linda presents novel implementation problems that we discuss in Part II. We are particularly concerned with implementation of the dynamic global name space that the generative communication model requires.

2,584 citations


Additional excerpts

  • ...data locks (A, B, C . . . ). T ransaction processes set and clear locks according to the two-phase locking protocol [ 7 ]....

    [...]

Book ChapterDOI
Jim Gray1
01 Jan 1978
TL;DR: This paper is a compendium of data base management operating systems folklore and focuses on particular issues unique to the transaction management component especially locking and recovery.
Abstract: This paper is a compendium of data base management operating systems folklore. It is an early paper and is still in draft form. It is intended as a set of course notes for a class on data base operating systems. After a brief overview of what a data management system is it focuses on particular issues unique to the transaction management component especially locking and recovery.

1,635 citations

Journal ArticleDOI
TL;DR: In this paper, two families of non-locking concurrency controls are presented, which are optimistic in the sense that they rely mainly on transaction backup as a control mechanism, "hoping" that conflicts between transactions will not occur.
Abstract: Most current approaches to concurrency control in database systems rely on locking of data objects as a control mechanism. In this paper, two families of nonlocking concurrency controls are presented. The methods used are “optimistic” in the sense that they rely mainly on transaction backup as a control mechanism, “hoping” that conflicts between transactions will not occur. Applications for which these methods should be more efficient than locking are discussed.

1,519 citations

Proceedings ArticleDOI
10 Dec 1979
TL;DR: The algorithm guarantees serial consistency, admits temporary copies in a natural way by the introduction of copies with no votes, and has been implemented in the context of an application system called Violet.
Abstract: In a new algorithm for maintaining replicated data, every copy of a replicated file is assigned some number of votes. Every transaction collects a read quorum of rvotes to read a file, and a write quorum of wvotes to write a file, such that r+w is greater than the total number of votes assigned to the file. This ensures that there is a non-null intersection between every read quorum and every write quorum. Version numbers make it possible to determine which copies are current. The reliability and performance characteristics of a replicated file can be controlled by appropriately choosing r, w, and the file's voting configuration. The algorithm guarantees serial consistency, admits temporary copies in a natural way by the introduction of copies with no votes, and has been implemented in the context of an application system called Violet.

1,445 citations


Cites background from "The notions of consistency and pred..."

  • ...The appendix demonstrates that our algorithm maintains serial consistency [1]....

    [...]

  • ...system, a property known as serial consistency [1]....

    [...]

References
More filters
Journal ArticleDOI
E. F. Codd1
TL;DR: In this article, a model based on n-ary relations, a normal form for data base relations, and the concept of a universal data sublanguage are introduced, and certain operations on relations are discussed and applied to the problems of redundancy and consistency in the user's model.
Abstract: Future users of large data banks must be protected from having to know how the data is organized in the machine (the internal representation). A prompting service which supplies such information is not a satisfactory solution. Activities of users at terminals and most application programs should remain unaffected when the internal representation of data is changed and even when some aspects of the external representation are changed. Changes in data representation will often be needed as a result of changes in query, update, and report traffic and natural growth in the types of stored information.Existing noninferential, formatted data systems provide users with tree-structured files or slightly more general network models of the data. In Section 1, inadequacies of these models are discussed. A model based on n-ary relations, a normal form for data base relations, and the concept of a universal data sublanguage are introduced. In Section 2, certain operations on relations (other than logical inference) are discussed and applied to the problems of redundancy and consistency in the user's model.

4,990 citations

Book
01 Jan 1952

3,806 citations


"The notions of consistency and pred..." refers background or methods in this paper

  • ...recursively unsolvable (Kleene [5]), so it is not clear how to make predicate locks "work....

    [...]

  • ..., - , - as shown by G6del (see Kleene [5]))....

    [...]

  • ...Kleene, S.C. Introduction to Metamathematics....

    [...]

  • ...In general this is a recursively unsolvable problem (even if predicates are restricted to using the arithmetic operators q-,., -, -as shown by G6del (see Kleene [5]))....

    [...]

  • ...Again, Presburger (see Kleene [5]) showed a pro-cedure to decide if two predicates overlap for a class of predicates slightly more general than simple predicates (he allowed q-, --, <, =, ~, >, mod and allowed any Boolean combination of these operators and operands on integers)....

    [...]

Proceedings ArticleDOI
27 Aug 1973
TL;DR: A unified, systematic view of integrity/recovery as it relates to a data-processing system—whether man, machine, or both is presented.
Abstract: Presented is a unified, systematic view of integrity/recovery as it relates to a data-processing system—whether man, machine, or both. The concept, sphere of control (SOC), as a bound around a process, is developed to permit describing and solving many of the rather aggravating problems of auditability, repeatability, reproducibility, scheduling, consistency, recovery and general integrity. Identified are the relationships among resources and SOCs, the types of resource status which must be maintained, and the effects that dependency versus commitment has on process scheduling and recovery strategy. Virtually ignored are the problems of lost storage for which redundancy is a solution, mainly because information already exists in this realm.

134 citations


"The notions of consistency and pred..." refers background in this paper

  • ...As Davies and Bjork [1, 2 ] point out, this procedure may not work correctly after T has unlocked (committed) any entities which it has modified....

    [...]

Proceedings ArticleDOI
27 Aug 1973
TL;DR: Previously developed sphere-of-control (SOC) concepts are used to develop a scenario for post-process recovery where an information structure provides the recovery boundary around the effects of the usage of a resource.
Abstract: Previously developed sphere-of-control (SOC) concepts are used to develop a scenario for post-process recovery. An information structure provides the recovery boundary around the effects of the usage of a resource. Rules for building this structure are addressed, and the capability for searching backward in time is identified to determine the source of error and possible recovery strategies.

49 citations


"The notions of consistency and pred..." refers background in this paper

  • ...As Davies and Bjork [ 1 , 2] point out, this procedure may not work correctly after T has unlocked (committed) any entities which it has modified....

    [...]

Proceedings Article
01 Jan 1974

47 citations


"The notions of consistency and pred..." refers background in this paper

  • ...The paper by Chamberlin, Boyce, and Traiger [ 3 ] presents a scheme for deciding which transaction to preempt....

    [...]