File locking issues

Oliver Welter mail at oliwel.de
Fri Jan 16 11:19:55 UTC 2015


Hi All,

I upgrade my mail server from doveot 1.1.7 to 2.2.13 and encounter
problems with file locking issues.

The server has around 400 clients using IMAP and I get tons of "Warning:
fscking index file .. dovecot.index" and  "Error: Corrupted transaction
log". Sometimes the transaction log problem is followed by "Panic: file
mail-transaction-log.c: line 350
(mail_transaction_log_set_mailbox_sync_pos): assertion failed:
(file_offset >= log->head->saved_tail_offset)"

I tried all offered locking methods (fcntl, flock, dotlock) without success.

The server runs inside a virtual guest (linux-vserver which is similar
to LXC) using an overlay filesystem. I suspect the overlayfs but have no
idea how to test this, besides - as I understand - dotlock should not
rely on the fs locking at all :(

I even wonder why the old dovecot worked for nearly 10 years without any
problems, even under higher loads.

The config is pretty straightforward:

# 2.2.13: /etc/dovecot/dovecot.conf
# OS: Linux 3.4.57-vs2.3.3.9-g67e6589-dirty x86_64 Gentoo Base System
release 2.2
auth_cache_negative_ttl = 0
auth_cache_size = 50 M
auth_mechanisms = plain cram-md5
debug_log_path = /var/log/dovecot-debug.log
default_client_limit = 900
default_process_limit = 250
disable_plaintext_auth = no
first_valid_gid = 89
first_valid_uid = 89
info_log_path = /var/log/dovecot.log
last_valid_gid = 89
last_valid_uid = 89
listen = *
lock_method = dotlock
login_greeting = Serverpilot.net Mail Service
mail_gid = 89
mail_location = maildir:~/.maildir
mail_uid = 89
namespace inbox {
  inbox = yes
  location =
  mailbox Drafts {
    special_use = \Drafts
  }
  mailbox Junk {
    special_use = \Junk
  }
  mailbox Sent {
    special_use = \Sent
  }
  mailbox "Sent Messages" {
    special_use = \Sent
  }
  mailbox Trash {
    special_use = \Trash
  }
  prefix =
}
passdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
protocols = imap pop3
service imap-login {
  process_min_avail = 5
  service_count = 0
}
ssl_cert = </var/qmail/control/servercert.pem
ssl_cipher_list = ALL:!EXPORT:!LOW:!MEDIUM:!aNULL:+RC4:@STRENGTH
ssl_dh_parameters_length = 2048
ssl_key = </var/qmail/control/servercert.pem
ssl_protocols = !SSLv2 !TLSv1.2
userdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
protocol imap {
  mail_max_userip_connections = 25
}


Any ideas are welcome.

Oliver
-- 
Protect your environment -  close windows and adopt a penguin!

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4074 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://dovecot.org/pipermail/dovecot/attachments/20150116/c8b75760/attachment.p7s>


More information about the dovecot mailing list