On 22.01.2018 17:01, Jaakko Seppälä wrote: > Hello, > > Autoexpunge is not working when used with dotlock locking. It seems to > been broken since version 2.2.28. > > When autoexpunge is enabled and mailbox locking is set to dotlock all > imap, pop and lmtp connections crash with the same error "file > file-lock.c: line 287: unreached". > > Connected to localhost. > Escape character is '^]'. > * OK [CAPABILITY IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE > LITERAL+ AUTH=PLAIN] Dovecot ready. > X LOGIN testuser password > X OK [CAPABILITY IMAP4rev1 SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT > SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT > MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS > LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES > WITHIN CONTEXT=SEARCH LIST-STATUS BINARY MOVE LITERAL+ NOTIFY] Logged in > X LOGOUT > * BYE Logging out > X OK Logout completed (0.001 + 0.000 secs). > Connection closed by foreign host. > > => > > Jan 22 09:25:55 dovecottest dovecot: imap-login: Login: > user=<testuser>, method=PLAIN, rip=::1, lip=::1, mpid=8274, secured, > session=<EDVCNV5jvNsAAAAAAAAAAAAAAAAAAAAB> > Jan 22 09:25:57 dovecottest dovecot: > imap(testuser)<8274><EDVCNV5jvNsAAAAAAAAAAAAAAAAAAAAB>: Panic: file > file-lock.c: line 287: unreached > Jan 22 09:25:57 dovecottest dovecot: > imap(testuser)<8274><EDVCNV5jvNsAAAAAAAAAAAAAAAAAAAAB>: Error: Raw > backtrace: /usr/local/lib/dovecot/libdovecot.so.0(+0xc8d24) > [0x7ff43bef5d24] -> /usr/local/lib/dovecot/libdovecot.so.0(+0xc8dde) > [0x7ff43bef5dde] -> /usr/local/lib/dovecot/libdovecot.so.0(i_fatal+0) > [0x7ff43be69190] -> /usr/local/lib/dovecot/libdovecot.so.0(+0xcd8ff) > [0x7ff43befa8ff] -> > /usr/local/lib/dovecot/libdovecot.so.0(file_wait_lock_error+0x26) > [0x7ff43befac46] -> > /usr/local/lib/dovecot/libdovecot.so.0(file_try_lock_error+0x13) > [0x7ff43befacc3] -> > /usr/local/lib/dovecot/libdovecot.so.0(file_create_locked+0x253) > [0x7ff43bef7df3] -> > /usr/local/lib/dovecot/libdovecot-storage.so.0(mail_user_lock_file_create+0xc5) > [0x7ff43c1f5f15] -> > /usr/local/lib/dovecot/libdovecot-storage.so.0(mail_user_autoexpunge+0x1f8) > [0x7ff43c1dfc68] -> dovecot/imap(+0x1ba7c) [0x7ff43c72fa7c] -> > dovecot/imap(client_input+0xb5) [0x7ff43c7308c5] -> > /usr/local/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x65) > [0x7ff43bf0d315] -> > /usr/local/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x10f) > [0x7ff43bf0ebbf] -> > /usr/local/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x52) > [0x7ff43bf0d412] -> > /usr/local/lib/dovecot/libdovecot.so.0(io_loop_run+0x38) > [0x7ff43bf0d638] -> > /usr/local/lib/dovecot/libdovecot.so.0(master_service_run+0x13) > [0x7ff43be8bb73] -> dovecot/imap(main+0x333) [0x7ff43c7226c3] -> > /lib64/libc.so.6(__libc_start_main+0xf5) [0x7ff43ba8bc05] -> > dovecot/imap(+0xe8a1) [0x7ff43c7228a1] > Jan 22 09:25:57 dovecottest dovecot: > imap(testuser)<8274><EDVCNV5jvNsAAAAAAAAAAAAAAAAAAAAB>: Fatal: master: > service(imap): child 8274 killed with signal 6 (core dumps disabled) > > > Configuration used for testing: > > [root@dovecottest dovecot]# /usr/local/sbin/dovecot -n > # 2.3.0 (c8b89eb): /usr/local/etc/dovecot/dovecot.conf > # OS: Linux 3.10.0-514.el7.x86_64 x86_64 CentOS Linux release 7.3.1611 > (Core) > lock_method = dotlock > mail_location = maildir:~/Maildir > namespace inbox { > inbox = yes > location = > mailbox Drafts { > special_use = \Drafts > } > mailbox INBOX { > autoexpunge = 30 days > } > mailbox Junk { > special_use = \Junk > } > mailbox Sent { > special_use = \Sent > } > mailbox "Sent Messages" { > special_use = \Sent > } > mailbox Trash { > special_use = \Trash > } > prefix = > } > passdb { > driver = pam > } > service lmtp { > inet_listener lmtp { > port = 24 > } > } > ssl = no > userdb { > driver = passwd > } > > > Regards, > Jaakko
Hi! Thanks for reporting this, we'll look into it. Aki