[Exim] mbx locking

Top Page
Delete this message
Reply to this message
Author: Ray Miller
Date:  
To: exim-users
Subject: [Exim] mbx locking
We recently upgraded one of our servers from exim-2.02 to exim-3.12
which allowed us to try exim's native mbx delivery for the first
time. Very quickly, lots of messages of the form:

2000-01-18 10:59:24 12AWLe-0007he-00 == xxxxxxxx@???
T=local_delivery_mbx defer (-9): failed to lock mailbox
/x0/snec/xxxxxxxx/Mail/INBOX (fcntl)

built up in the log. Affected mail then spent considerable time
deferred in the queue, making this method of delivery unworkable.

Previously local deliveries were piped to tmail, which does not have
the same problems obtaining a lock. Looking at the code, I see that
tmail uses a blocking flock() call, while exim uses a non-blocking
fcntl() to lock the mbx lock file.

Having exim block in the fcntl() call (with timeout via SIGALRM) would
make exim behave more like tmail, and should get around the locking
problem. Is this easily implemented?

Ray.
--
Ray Miller <ray.miller@???>
Unix Systems Programmer
Oxford University Computing Services