[Rpm-maint] [Suse patch] Suspend exclusive database lock for scriptlets

Panu Matilainen pmatilai at redhat.com
Tue May 29 06:49:03 UTC 2007


On Fri, 25 May 2007, Michael Schroeder wrote:

> On Fri, May 25, 2007 at 02:05:00PM +0300, Panu Matilainen wrote:
>> More locking-related tweaks - is the private locking a leftover from the
>> 4.1-4.2 days of locking horrors (which I can certainly understand ;),
>> never since revisited or decision based on current experiences?
>
> Both, actually. I stayed with a global lock because of
>
> 1) the NPTL lock horrors
> 2) berkeley db lock cleanup problems
> 3) a fine grained lock makes no sense anyway, as transactions
>   mustn't overlap. That's why newer rpms have the transaction lock.
>   (Which also makes find grained locking obsolete...)

Yeah, the (NPTL) locking is ridiculously complicated and nasty :-/

JBJ added stale-lock autoremoval to his tree some time ago:
https://lists.dulug.duke.edu/pipermail/rpm-devel/2006-November/001892.html

However that seems to require a newer bdb than currently in rpm.org, duh.
Upgrading to newer db for 4.4.2.1 is not exactly viable, but after that.. 
autocleaned stale locks would be nice, I've typed 'rm -f /var/lib/rpm/__*' 
many times enough :) OTOH post 4.4.2.1 I think we should have a real good
look on the whole locking department (what schemes we want to support 
etc).

 	- Panu -



More information about the Rpm-maint mailing list