Path: dp-news.maxwell.syr.edu!spool.maxwell.syr.edu!drn.maxwell.syr.edu!news.maxwell.syr.edu!elnk-pas-nf1!newsfeed.earthlink.net!pd7cy1no!shaw.ca!pd7tw2no.POSTED!53ab2750!not-for-mail
X-Trace-PostClient-IP: 24.81.152.157
From: paul c <toledobythesea@oohay.ac>
User-Agent: Mozilla Thunderbird 1.0.6 (Windows/20050716)
X-Accept-Language: en-us, en
MIME-Version: 1.0
Newsgroups: comp.databases.theory
Subject: Re: Lock-free databases
References: <XYSdnV1mD7BmJ_fenZ2dnUVZ_tqdnZ2d@comcast.com> <DoadnevGMJBc1vbeRVn-vA@comcast.com>
In-Reply-To: <DoadnevGMJBc1vbeRVn-vA@comcast.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 35
Message-ID: <c4Vaf.406111$1i.307864@pd7tw2no>
Date: Sat, 05 Nov 2005 02:48:40 GMT
NNTP-Posting-Host: 64.59.144.75
X-Complaints-To: abuse@shaw.ca
X-Trace: pd7tw2no 1131158920 64.59.144.75 (Fri, 04 Nov 2005 19:48:40 MST)
NNTP-Posting-Date: Fri, 04 Nov 2005 19:48:40 MST
Organization: Shaw Residential Internet
Xref: dp-news.maxwell.syr.edu comp.databases.theory:34228

> "Joe Seigh" <jseigh_01@xemaps.com> wrote in message 
> news:XYSdnV1mD7BmJ_fenZ2dnUVZ_tqdnZ2d@comcast.com...
> 
>>Is there any significant benefit to making a database
>>lock-free?  By lock-free I mean the internal implementation.
>>I know there's a database out there that frequently claims
>>to be lock-free but I've looked at their "lock-free" patents
> ...

I'm not a concurrency expert but I've seen lots of places where I didn't 
need the low-level (eg. row level) locking that happened under the 
covers (not to mention physical locking that physical access servers do 
to avoid their own internal deadlocks as well as handle their 
checkpoints and such).

Usually it was because we knew more about the application than the 
engine ever could, eg certain tables were never updated except offline 
and so forth (mostly i was dealing with strict 2 phase lock protocols 
which are about as strict as they come) or the internal locks got in the 
way of different users updating at the same time, when the application's 
nature was such that those users could never clash at a logical level.

Sometimes I'd use the lock manager to bend things - eg. use a parent 
transaction to get an intent lock on a row in an application table whose 
only purpose was to get locks, so that an independent child transaction 
could be guaranteed to do what it wanted without collisions - the parent 
would rollback its intents when the child completed (we didn't have 
select-for-update and this proved you could get the same effect without 
locks at least at the application level).

I'm curious whether any current products (I'm years out of touch) 
actually implement real predicate locks (such as described by Gray).

pc

