Hello,
I've upgraded dovecote to 2.3.19 (b3ad6004dc) a week ago. Since then I get an error when searching for messages from all users in a particular folder:
doveadm search -A mailbox 'INBOX.learn' Error: auth-master: userdb list: Disconnected unexpectedly doveadm: Error: Failed to iterate through some users
This is in the logs: dovecot: auth: Panic: file userdb-blocking.c: line 124 (userdb_blocking_iter_next): assertion failed: (ctx->conn != NULL) dovecot: auth: Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0(backtrace_append+0x41) [0x7f1c12675c91] -> /usr/lib/dovecot/libdovecot.so.0(backtrace_get+0x22) [0x7f1c12675db2] -> /usr/lib/dovecot/libdovecot.so.0(+0x10b0bb) [0x7f1c126830bb] -> /usr/lib/dovecot/libdovecot.so.0(+0x10b157) [0x7f1c12683157] -> /usr/lib/dovecot/libdovecot.so.0(+0x5d375) [0x7f1c125d5375] -> dovecot/auth 0 wait, 0 passdb, 0 userdb [0x55e0278287a7] -> dovecot/auth 0 wait, 0 passdb, 0 userdb [0x55e02782c54b] -> dovecot/auth 0 wait, 0 passdb, 0 userdb [0x55e027849ca7] -> dovecot/auth 0 wait, 0 passdb, 0 userdb [0x55e02783db86] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handle_timeouts+0x15f) [0x7f1c1269976f] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0xcf) [0x7f1c1269b02f] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x54) [0x7f1c12699a54] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x40) [0x7f1c12699bc0] -> /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x17) [0x7f1c1260b207] -> dovecot/auth 0 wait, 0 passdb, 0 userdb [0x55e027829588] -> /lib/x86_64-linux-gnu/libc.so.6(+0x29fd0) [0x7f1c122cbfd0] -> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x7d) [0x7f1c122cc07d] -> dovecot/auth 0 wait, 0 passdb, 0 userdb [0x55e02782976e] dovecot: auth: Fatal: master: service(auth): child 19452 killed with signal 6 (core dumped)
I've system users from passwd and users from a passwd-file: userdb { driver = passwd } userdb { args = username_format=%u /etc/dovecot/users driver = passwd-file }
If I disable the passwd-file, a search works fine, but not with both user backends.
This worked fine with version 2.3.18.
Someone discovered this behavior too?
This is my config: # 2.3.19 (b3ad6004dc): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.19 (4eae2f79) # OS: Linux 5.13.0-41-generic x86_64 Ubuntu 21.10 auth_mechanisms = plain login auth_username_format = %n default_vsz_limit = 2 G mail_location = maildir:~/Maildir mail_privileged_group = mail managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext 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 = INBOX. separator = . } passdb { driver = pam } passdb { args = scheme=ARGON2I username_format=%u /etc/dovecot/users driver = passwd-file } plugin { sieve = file:~/sieve;active=~/.dovecot.sieve sieve_before = /var/mail/moveSpam.sieve } protocols = imap lmtp sieve service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } } service imap-login { inet_listener imap { port = 0 } } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0600 user = postfix } } service managesieve-login { inet_listener sieve { port = 4190 } } ssl = required ssl_cert =
Best regards, Christoph
Hi!
This is an unfortunate regression in 2.3.19, which has already been fixed. See https://github.com/dovecot/core/commit/30e69471792aec818dbbfa64adb868db14a6d...
It will be part of next release.
Aki
On 19/05/2022 23:33 Christoph Fürstaller christoph@fuerstaller.com wrote:
Hello,
I've upgraded dovecote to 2.3.19 (b3ad6004dc) a week ago. Since then I get an error when searching for messages from all users in a particular folder:
doveadm search -A mailbox 'INBOX.learn' Error: auth-master: userdb list: Disconnected unexpectedly doveadm: Error: Failed to iterate through some users
This is in the logs: dovecot: auth: Panic: file userdb-blocking.c: line 124 (userdb_blocking_iter_next): assertion failed: (ctx->conn != NULL) dovecot: auth: Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0(backtrace_append+0x41) [0x7f1c12675c91] -> /usr/lib/dovecot/libdovecot.so.0(backtrace_get+0x22) [0x7f1c12675db2] -> /usr/lib/dovecot/libdovecot.so.0(+0x10b0bb) [0x7f1c126830bb] -> /usr/lib/dovecot/libdovecot.so.0(+0x10b157) [0x7f1c12683157] -> /usr/lib/dovecot/libdovecot.so.0(+0x5d375) [0x7f1c125d5375] -> dovecot/auth 0 wait, 0 passdb, 0 userdb [0x55e0278287a7] -> dovecot/auth 0 wait, 0 passdb, 0 userdb [0x55e02782c54b] -> dovecot/auth 0 wait, 0 passdb, 0 userdb [0x55e027849ca7] -> dovecot/auth 0 wait, 0 passdb, 0 userdb [0x55e02783db86] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handle_timeouts+0x15f) [0x7f1c1269976f] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0xcf) [0x7f1c1269b02f] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x54) [0x7f1c12699a54] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x40) [0x7f1c12699bc0] -> /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x17) [0x7f1c1260b207] -> dovecot/auth 0 wait, 0 passdb, 0 userdb [0x55e027829588] -> /lib/x86_64-linux-gnu/libc.so.6(+0x29fd0) [0x7f1c122cbfd0] -> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x7d) [0x7f1c122cc07d] -> dovecot/auth 0 wait, 0 passdb, 0 userdb [0x55e02782976e] dovecot: auth: Fatal: master: service(auth): child 19452 killed with signal 6 (core dumped)
I've system users from passwd and users from a passwd-file: userdb { driver = passwd } userdb { args = username_format=%u /etc/dovecot/users driver = passwd-file }
If I disable the passwd-file, a search works fine, but not with both user backends.
This worked fine with version 2.3.18.
Someone discovered this behavior too?
This is my config: # 2.3.19 (b3ad6004dc): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.19 (4eae2f79) # OS: Linux 5.13.0-41-generic x86_64 Ubuntu 21.10 auth_mechanisms = plain login auth_username_format = %n default_vsz_limit = 2 G mail_location = maildir:~/Maildir mail_privileged_group = mail managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext 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 = INBOX. separator = . } passdb { driver = pam } passdb { args = scheme=ARGON2I username_format=%u /etc/dovecot/users driver = passwd-file } plugin { sieve = file:~/sieve;active=~/.dovecot.sieve sieve_before = /var/mail/moveSpam.sieve } protocols = imap lmtp sieve service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } } service imap-login { inet_listener imap { port = 0 } } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0600 user = postfix } } service managesieve-login { inet_listener sieve { port = 4190 } } ssl = required ssl_cert =
Best regards, Christoph
participants (2)
-
Aki Tuomi
-
Christoph Fürstaller