locking question

Tom Lieuallen toml at engr.orst.edu
Mon Jun 1 17:28:03 EEST 2020


We're running dovecot 2.3.10 on two different servers (two different 
environments).  Both very similarly configured (sendmail and procmail 
for mail delivery); same OS and patch levels.  One environment has 
nearly 10,000 users and hasn't seen problems.  The other environment has 
just a handful of users, but one user is very active with email and has 
a fairly complicated procmail configuration.  I'm having ongoing mail 
file locking problems with that one user...

Procmail says it's using dotlocking and fcntl:

     procmail v3.22 2001/09/10
     Locking strategies:     dotlocking, fcntl()

I'm  using defaults for dovecot:

     #mbox_read_locks = fcntl
     #mbox_write_locks = dotlock fcntl


I have seen this a number of times in dovecot's logs.  This signifies a 
start of locking problems with a mailbox.

     Mailbox aa_checkme_second: fcntl() failed with mbox: No locks available

Procmail's logs show this:

procmail: Locking "mail/aa_checkme_second.lock"
procmail: Assigning "LASTFOLDER=mail/aa_checkme_second"
procmail: Opening "mail/aa_checkme_second"
procmail: Acquiring kernel-lock
procmail: Kernel-lock failed
procmail: Unlocking "mail/aa_checkme_second.lock"

These errors were not concurrent; dovecot's errors happened first.  I've 
been suspicious that there was a locking conflict of some kind.  My only 
remaining question on that front is about the read locks.  Is it worth 
trying dotlock for it instead of fcntl?

If that's not the problem, then could we be running into some system 
limitations or a bug in the kernel or mailbox storage?

The server running dovecot is Centos 6.10.  The mailbox storage is on 
Isilon OneFS 8.1.2.0.

I should probably increase dovecot's logging to see if anything else 
jumps out at me.

thank you for any suggestions.

Tom Lieuallen
Oregon State Univesity


More information about the dovecot mailing list