Jeffrey Rice
2008-May-25 17:30 UTC
[Dovecot] 1.1rc5 Panic: mailbox-tree.c: line 171 (mailbox_tree_iterate_set_next_node)
Hi, I do hope this hasn't been covered. I googled and looked in the archives but didn't see anything related, so hopefully I am not covering old ground. I recently upgraded from 1.0.10 to 1.1rc5. I am seeing this error from clients: May 25 11:01:54 finity dovecot: Panic: IMAP(xxx at here.org): file mailbox-tree.c: line 171 (mailbox_tree_iterate_set_next_node): assertion failed: (len <= ctx->parent_pos) May 25 10:21:19 finity dovecot: IMAP(xxx at here.org): Raw backtrace: imap [0x80ced44] -> imap [0x80ce99a] -> imap [0x80a0c63] -> imap(maildir_list_iter_next+0x33) [0x806ba53] -> imap [0x805c49b] -> imap(cmd_list_full+0x4b2) [0x805d1d2] -> imap(cmd_lsub+0x1a) [0x805d55a] -> imap [0x805f83c] -> imap [0x805f8e5] -> imap [0x80600c5] -> imap(client_input+0x5e) [0x80602ce] -> imap(io_loop_handler_run+0x110) [0x80d6ad0] -> imap(io_loop_run+0x28) [0x80d5d28] -> imap(main+0x4a1) [0x8067e71] -> /lib/libc.so.6(__libc_start_main+0xe0) [0xb7de6450] -> imap [0x8059d61] ## In my old install, I did have mail_extra_groups = vmail I commented that out and put in: mail_access_groups = vmail mail_privileged_group = vmail The documentation on these parameters is a bit light, so I'm not sure which (or both) to use. Can someone clarify? All the maildirs are owned by group vmail. ### dovecot -n # 1.1.rc5: /etc/dovecot/dovecot.conf ssl_cert_file: /etc/dovecot/ssl/certs/dovecot_cert.pem ssl_key_file: /etc/dovecot/ssl/private/dovecot_key.pem ssl_cipher_list: ALL:!LOW login_dir: /usr/local/var/run/dovecot/login login_executable: /usr/local/libexec/dovecot/imap-login login_greeting: IMAP ready. login_process_per_connection: no login_processes_count: 1 mail_access_groups: vmail mail_location: maildir:/home/vmail/%u maildir_copy_preserve_filename: yes mail_process_size: 70 auth default: mechanisms: plain cram-md5 login passdb: driver: sql args: /etc/dovecot/dovecot-mysql.cnf userdb: driver: passwd userdb: driver: static args: uid=5000 gid=5000 home=/home/vmail/%u/home socket: type: listen client: path: /var/spool/postfix/private/dovecot-auth-client mode: 432 user: postfix group: postfix
Timo Sirainen
2008-May-25 17:53 UTC
[Dovecot] 1.1rc5 Panic: mailbox-tree.c: line 171 (mailbox_tree_iterate_set_next_node)
On May 25, 2008, at 8:30 PM, Jeffrey Rice wrote:> I am seeing this error from clients: > > May 25 11:01:54 finity dovecot: Panic: IMAP(xxx at here.org): file > mailbox-tree.c: line 171 (mailbox_tree_iterate_set_next_node): > assertion failed: (len <= ctx->parent_pos)Any idea how to reproduce this? Could you find out the exact LSUB command that causes this? For example enable rawlog for the user: http://wiki.dovecot.org/Debugging/Rawlog Also send me the user's subscriptions file. It most likely has to do with what kind of a mailbox hierarchy is used..> I commented that out and put in: > > mail_access_groups = vmail > mail_privileged_group = vmail > > The documentation on these parameters is a bit light, so I'm not > sure which (or both) to use. Can someone clarify? All the maildirs > are owned by group vmail.You shouldn't need the above settings at all.> userdb: > driver: static > args: uid=5000 gid=5000 home=/home/vmail/%u/homeI assume gid=5000 is the vmail? That already gives vmail group access to the process. -------------- next part -------------- A non-text attachment was scrubbed... Name: PGP.sig Type: application/pgp-signature Size: 194 bytes Desc: This is a digitally signed message part URL: <http://dovecot.org/pipermail/dovecot/attachments/20080525/5c1a9aa2/attachment-0002.bin>
Jeffrey Rice
2008-May-25 18:23 UTC
[Dovecot] 1.1rc5 Panic: mailbox-tree.c: line 171 (mailbox_tree_iterate_set_next_node)
Timo Sirainen wrote:> On May 25, 2008, at 8:30 PM, Jeffrey Rice wrote: > >> I am seeing this error from clients: >> >> May 25 11:01:54 finity dovecot: Panic: IMAP(xxx at here.org): file >> mailbox-tree.c: line 171 (mailbox_tree_iterate_set_next_node): >> assertion failed: (len <= ctx->parent_pos) > >The command in question seems to be: 3 lsub "" "*" ## subscriptions Phil's Email.Beekeeping Phil's Email.Family Mail Phil's Email.Kaiperm Credit Union Phil's Email.Kiva Phil's Email.Rob and Jill INBOX.Sent INBOX.Trash INBOX.Drafts INBOX.Children International Phil's Email Sent Drafts Phil's Email.Kalamazoo College Phil's Email.New York Times Phil's Email.True Majority Trash .Sent.Sent-Dec-2006 .Sent.Sent-Jan-2007 .Sent.Sent-Feb-2007 .Sent.Sent-Mar-2007 Phil's Email.PayPal Phil's Email.Receipts Phil's Email.Amazon Phil's Email.Ancestry Sent.Sent-Dec-2007 ##EOF Could it be the mailboxes with the dot prefix? I have another user who does not generate a crash with the same command, and does not have any such mailboxes.>> I commented that out and put in: >> >> mail_access_groups = vmail >> mail_privileged_group = vmail >> >> The documentation on these parameters is a bit light, so I'm not sure >> which (or both) to use. Can someone clarify? All the maildirs are >> owned by group vmail. > > You shouldn't need the above settings at all. >OK, so the gid parameter below will give dovecot rw access to the maildirs owned by vmail?>> userdb: >> driver: static >> args: uid=5000 gid=5000 home=/home/vmail/%u/home > > I assume gid=5000 is the vmail? That already gives vmail group access > to the process. >Yes. I did wonder if I had an error here, because home=/home/vmail/%u. I don't know where the last "/home" came from. Removing it didn't seem to change the error. Jeff