Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!munnari!taso From: taso@munnari.oz (Taso Hatzi) Newsgroups: comp.databases Subject: Re: chest thumping (Actually, degree-3 consistency) Message-ID: <1726@munnari.oz> Date: Fri, 26-Jun-87 10:23:29 EDT Article-I.D.: munnari.1726 Posted: Fri Jun 26 10:23:29 1987 Date-Received: Sun, 28-Jun-87 01:10:07 EDT References: <959@killer.UUCP> <853@smokey.UUCP> <4915@utcsri.UUCP> <939@cognos.UUCP> Reply-To: taso@munnari.UUCP (Taso Hatzi) Lines: 42 In article <939@cognos.UUCP> garyp@cognos.UUCP (Gary Puckering) writes: > >A typical example: in Rdb/VMS if several transactions are attempting >to insert tuples into a relation with a unique index, it is likely >that one or more may become deadlocked or go into a long wait state -- >even if there is no collision on unique key values! Why? Well, to >prevent phantoms, Rdb/VMS must lock indexes for inserts. This is indeed a very real problem with Rdb. Can anyone comment on how Oracle and Ingres measure up in this respect? >read_write transaction. But, use of a read_write transaction causes >each tuple (probably page, depending on the lock granularity of your >system) to be S locked. That's so someone else doesn't come along and Does anyone know for sure whether it's the tuple or the page that gets locked? > .... Why not use a read_only >transaction for the browse. That means no S locks are held. The >system returns a version of each tuple that was current as at the >start of the transaction. Ok, so how do we update? Well, we could >start a read_write transaction each time the user requests an update. With Rdb, to have more than one transaction running at the same time, one has to code at the DSRI level because the RDO query language doesn't permit nested transactions. Do Oracle or Ingres permit nested transactions? > >In my humble opinion, a large part of the perceived "poor" performance >of relational systems may be related to the problems I've just >described. > I agree with this statement - all database systems should come with tools which can allow one to see who locked what data and when. On the subject of degree 2 & 3 consistencey with respect to Rdb, it is stated that the DSRI architecture supports degree 2 and 3 consistency. Does anyone know whether the Rdb implementations, either Rdb/VMS or Rdb/Eln, support degree 2 consistency?