[comp.databases] Predicate Locks

vinay@ai.toronto.edu ("Vinay K. Chaudhri") (10/19/90)

The idea of using predicate locks for database concurrency control
has been around for over ten years.  But still there are not many
commercial systems which use predicate locking as a primary method
for concurrency control.

One reason for this lack of applicability is because it is not 
computationally inefficient to check overlap between two predicate
locks.  People have given suggestions for developing some heuristics
but there does not seem to be any comprehensive approach available.

Another difficulty seems to be in devising an efficient implementation
technique for predicate lock table.  Maintaining a predicate lock
table of some reasonable size (say 100) and comparing a new predicate
against these 100 expressions is prohibitive, leave aside the 
computational reasons.

My question is the following:  Are there really no commercial systems
that use predicate locking ?  Are the reasons for their in-applicability
as cited above are correct ?  Are predicate locks dead as a research
or application area ?



---------------------------------------------------------------------------
Vinay K Chaudhri

Email:                                  Mail:
   Internet:  vinay@ai.toronto.edu         321 Bloor Street (West) Box 204
   Bitnet  :  VINAY@UTORANT.BITNET         Toronto  M5S 1S5
   UUCP    :  ...!uunet!utai!vinay         CANADA

dmg@Unify.Com (Dave Glende) (10/20/90)

In article <90Oct18.180225edt.12896@neat.cs.toronto.edu> vinay@ai.toronto.edu ("Vinay K. Chaudhri") writes:
>
>
>The idea of using predicate locks for database concurrency control
>has been around for over ten years.  But still there are not many
>commercial systems which use predicate locking as a primary method
>for concurrency control.
>
>One reason for this lack of applicability is because it is not 
>computationally inefficient to check overlap between two predicate
>locks.  People have given suggestions for developing some heuristics
>but there does not seem to be any comprehensive approach available.
>
>Another difficulty seems to be in devising an efficient implementation
>technique for predicate lock table.  Maintaining a predicate lock
>table of some reasonable size (say 100) and comparing a new predicate
>against these 100 expressions is prohibitive, leave aside the 
>computational reasons.

Using predicate locks as the sole concurrency control mechanism is, as
you've said, quite expensive.  It would be possible to use them in
small applications, but in a typical commercial situation the cost
becomes too high especially in worse-case scenarios.

However, certain types of predicate locks can be quite useful and still
cost effective.

>
>My question is the following:  Are there really no commercial systems
>that use predicate locking ?  Are the reasons for their in-applicability
>as cited above are correct ?  Are predicate locks dead as a research
>or application area ?
>

UNIFY 2000 uses a combination of predicate locks and row locking
for concurrency control.

-- 

David Glende   Work:(916) 920-9092  | Unify Corporation
dmg@unify.com  FAX :(916) 921-5340  | 3870 Rosin Court 
                                    | Sacto, CA 95834

gupyo01@cai.com (11/03/90)

In article <90Oct18.180225edt.12896@neat.cs.toronto.edu>, vinay@ai.toronto.edu ("Vinay K. Chaudhri") writes:
> The idea of using predicate locks for database concurrency control
> has been around for over ten years.  But still there are not many
> commercial systems which use predicate locking as a primary method
> for concurrency control.
> 
> [... stuff deleted ...]
>
> My question is the following:  Are there really no commercial systems
> that use predicate locking ?  Are the reasons for their in-applicability
> as cited above are correct ?  Are predicate locks dead as a research
> or application area ?
> 

At least one commercial product uses predicate locks: CA-DB from
Computer Associates.  One of the reasons for this might be that
the product was originally developed by a start-up which had
Kapali Eswaran as one of its founders.  For more information on this,
please contact me.

Yogesh Gupta
Computer Associates
(408) 922-2633