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

Reply via email to