On Mon, 24 Nov 1997, Pete Ashdown wrote:
> Looks like locking is foobar in 1.750 as well. A good indicator of fudged
> locking on my mailserver is load. Whenever I have a corrupt database, the
> load shoots up to above 30+. After installing 1.750, the load shot up to
> 30+ in about 15 minutes. Running tidydb returned nothing, no "keys read",
> no segmentation fault, no lock-timeout, nothing.
>
> Philip, my suggestion is that you beg, borrow, or steal some locking
> routines that work. I fail to understand why this continues to be such a
> problem. In fact, I'd be happy to dig some up for you if needed.
I did, I did! I too fail to understand what is going on. The current
locking in 1.750 is essentially what Ian Palfreyman implemented because
he was having trouble with the previous version.
I'm afraid I don't think there is anything much simpler than
open lock file
lock it
which is what now happens. However, I am quite prepared to believe I
have got it wrong, since any program at all may contain bugs. (I am
reminded of the "do nothing" program in IBM's MVT operating system.)
The code is contained in the function dbfn_open() in the module dbfn.c.
Please could somebody (lots of bodies!) review it to see what I have
done? The relevant bit is only about 40 lines.
Pete, can you remind us of the OS you are using, please?
Philip
--
Philip Hazel University Computing Service,
ph10@??? New Museums Site, Cambridge CB2 3QG,
P.Hazel@??? England. Phone: +44 1223 334714
--
*** Exim information can be found at
http://www.exim.org/ ***