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