Hello,
2.2.rc2 with configuration as sent with my last mail ("2.2beta2: LSUB
broke").
The following sequence crashes with INBOX containing unseen message:
* PREAUTH [CAPABILITY IMAP4rev1 LITERAL+ 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 SPECIAL-USE BINARY MOVE SEARCH=FUZZY COMPRESS=DEFLATE
QUOTA ACL RIGHTS=texk] Logged in as user
A0002 STATUS INBOX (MESSAGES UNSEEN)
* STATUS INBOX (MESSAGES 5651 UNSEEN 5)
A0002 OK Status completed.
A0003 SELECT INBOX
* FLAGS (\Answered \Flagged \Deleted \Seen \Draft $Forwarded)
* OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft $Forwarded \*)]
Flags permitted.
* 5651 EXISTS
* 0 RECENT
* OK [UNSEEN 5647] First unseen.
* OK [UIDVALIDITY 1060286197] UIDs valid
* OK [UIDNEXT 42051] Predicted next UID
* OK [HIGHESTMODSEQ 6878] Highest
A0003 OK [READ-WRITE] Select completed.
A0004 UID SEARCH 5651
* SEARCH 42050
A0004 OK Search completed (0.000 secs).
A0005 GETQUOTAROOT INBOX
imap(4140, lpressl) : Panic: file mail-namespace.c: line 654
(mail_namespace_find): assertion failed: (ns != NULL)
imap(4140, lpressl) : Error: Raw backtrace:
/usr/lib/dovecot/libdovecot.so.0(+0x6079a) [0x7f617b7f679a] ->
/usr/lib/dovecot/libdovecot.so.0(default_fatal_handler+0x32) [0x7f617b7f6882]
-> /usr/lib/dovecot/libdovecot.so.0(i_error+0) [0x7f617b7b7eaf] ->
/usr/lib/dovecot/libdovecot-storage.so.0(+0x760e2) [0x7f617bac30e2] ->
/usr/lib/dovecot/libdovecot-storage.so.0(mail_namespace_find_unalias+0x19)
[0x7f617bac3109] -> /usr/lib/dovecot/modules/lib10_quota_plugin.so(+0x5238)
[0x7f617a7ec238] ->
/usr/lib/dovecot/modules/lib10_quota_plugin.so(quota_get_resource+0xb7)
[0x7f617a7ec3b7] ->
/usr/lib/dovecot/modules/lib10_quota_plugin.so(quota_root_iter_next+0xf1)
[0x7f617a7ece11] ->
/usr/lib/dovecot/modules/lib11_imap_quota_plugin.so(+0x1bd5) [0x7f617a5e5bd5]
-> /usr/lib/dovecot/imap(command_exec+0x3d) [0x41603d] ->
/usr/lib/dovecot/imap() [0x415190] -> /usr/lib/dovecot/imap() [0x41527d]
-> /usr/lib/dovecot/imap(client_handle_input+0x11d) [0x4154fd] ->
/usr/lib/dovecot/imap(client_input+0x6f) [0x41587f] ->
/usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x36) [0x7f617b805426] ->
/usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0xaf) [0x7f617b80647f]
-> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x28) [0x7f617b8053c8] ->
/usr/lib/dovecot/libdovecot.so.0(master_service_run+0x13) [0x7f617b7bcb03] ->
/usr/lib/dovecot/imap(main+0x2a7) [0x41eb07] ->
/lib/libc.so.6(__libc_start_main+0xfd) [0x7f617b452c8d] ->
/usr/lib/dovecot/imap() [0x40b549]
Abgebrochen
GETQUOTAROOT directly after SELECT INBOX (without UID SEARCH) does not.
No crash without imap_quota plugin either, of course...
Regards,
Lutz