Hello,
Current Dovecot v2.2 HG crashes using the following command:
$ doveadm mailbox status -A -t unseen 'virtual/unread'
Please see backtrace below and dovecot -n output attached.
Thanks,
e-frog
gdb /usr/bin/doveadm 24023
GNU gdb (GDB) 7.5.91.20130417-cvs-ubuntu
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show
copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/doveadm...Reading symbols from
/usr/lib/debug/usr/bin/doveadm...done.
done.
Attaching to program: /usr/bin/doveadm, process 24023
warning: unable to open /proc file '/proc/24023/status'
warning: unable to open /proc file '/proc/24023/status'
ptrace: No such process.
[New LWP 24023]
warning: Can't read pathname for load map: Input/output error.
[Thread debugging using libthread_db enabled]
Using host libthread_db library
"/lib/i386-linux-gnu/libthread_db.so.1".
Core was generated by `doveadm mailbox status -A -t unseen virtual/unread'.
Program terminated with signal 11, Segmentation fault.
#0 i_stream_next_line (stream=0x0) at istream.c:382
382 istream.c: No such file or directory.
(gdb) bt full
#0 i_stream_next_line (stream=0x0) at istream.c:382
_stream = <optimized out>
pos = <optimized out>
#1 0xb754656b in auth_master_user_list_next (ctx=0xb91bfbd8) at
auth-master.c:689
line = <optimized out>
#2 0xb7634a0b in mail_storage_service_all_next (ctx=0xb91c4ba8,
username_r=username_r at entry=0xbf8e6630) at mail-storage-service.c:1260
__FUNCTION__ = "mail_storage_service_all_next"
#3 0xb7752d46 in doveadm_mail_cmd_get_next_user (ctx=0xb91be478,
username_r=0xbf8e6630) at doveadm-mail.c:416
No locals.
#4 0xb7753e95 in doveadm_mail_all_users (wildcard_user=0x0,
argv=0xb91ba1ec, ctx=0xb91be478) at doveadm-mail.c:368
ret = <optimized out>
input = {module = 0x0, service = 0xb77918f3 "doveadm",
username
= 0xb91bf8a0 "test1 at local.lan", session_id = 0x0, local_ip =
{family =
0, u = {
ip6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15
times>,
__u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}},
ip4 = {
s_addr = 0}}}, remote_ip = {family = 0, u = {ip6 =
{__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 =
{0, 0,
0, 0, 0, 0, 0, 0},
__u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}},
local_port = 0, remote_port = 0, userdb_fields = 0x0, flags_override_add
= (unknown: 0),
flags_override_remove = (unknown: 0), no_userdb_lookup = 0}
user_idx = 0
user = 0xb91bf8a0 "test1 at local.lan"
error = 0x10 <Address 0x10 out of bounds>
#5 doveadm_mail_cmd (argv=0xb91ba1ec, argc=-1189371412, cmd=0xbf8e668c)
at doveadm-mail.c:523
ctx = 0xb91be478
getopt_args = <optimized out>
ret = <optimized out>
c = <optimized out>
wildcard_user = 0x0
error = <optimized out>
#6 doveadm_mail_try_run (cmd_name=cmd_name at entry=0xb91ba200
"mailbox",
argc=5, argc at entry=6, argv=argv at entry=0xb91ba1dc) at doveadm-mail.c:608
cmd = 0xbf8e668c
#7 0xb7752903 in main (argc=6, argv=0xb91ba1dc) at doveadm.c:398
cmd_name = 0xb91ba200 "mailbox"
i = <optimized out>
quick_init = false
c = <optimized out>
(gdb)
-------------- next part --------------
# 2.2.4 (ebbe00999da8): /etc/dovecot/dovecot.conf
# OS: Linux 3.8.0-26-generic i686 Ubuntu 13.04
deliver_log_format = msgid=%m: from=%f: %$
dict {
dictionary = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
}
imap_client_workarounds = tb-extra-mailbox-sep
imap_id_log = *
lda_mailbox_autocreate = yes
mail_gid = vmail
mail_home = /home/vmail/%Ld/%Ln
mail_location = mdbox:~/mdbox
mail_plugins = quota virtual fts fts_lucene
mail_uid = vmail
mailbox_list_index = yes
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 ihave
vnd.dovecot.duplicate vnd.dovecot.pipe
namespace inbox {
hidden = no
inbox = yes
list = yes
location prefix separator = /
subscriptions = yes
type = private
}
namespace virtual {
location = virtual:~/virtual
prefix = virtual/
separator = /
subscriptions = no
type = private
}
passdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
plugin {
antispam_backend = spool2dir
antispam_spam = Junk
antispam_spool2dir_notspam = /home/vmail/learn-ham/%%020lu-%u-%%05luh
antispam_spool2dir_spam = /home/vmail/learn-spam/%%020lu-%u-%%05lus
antispam_trash = Trash
fts = lucene
fts_lucene = whitespace_chars=@.
mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename
append
mail_log_fields = uid box from subject msgid size flags
quota = dict:user::proxy::dictionary
sieve = ~/dovecot.sieve
sieve_before = /home/vmail/etc/sieve-global/
sieve_dir = ~/sieve
sieve_extensions = +vnd.dovecot.pipe +vnd.dovecot.duplicate
sieve_pipe_bin_dir = /home/vmail/etc/sieve-pipe
sieve_pipe_exec_timeout = 30s
sieve_plugins = sieve_extprograms
}
postmaster_address = postmaster at localhost.lan
protocols = " imap lmtp sieve"
quota_full_tempfail = yes
service anvil {
unix_listener anvil {
user = vmail
}
}
service auth {
unix_listener /var/spool/postfix/private/dovecot-auth {
group = postfix
mode = 0660
user = postfix
}
unix_listener auth-userdb {
mode = 0600
user = vmail
}
}
service config {
unix_listener config {
mode = 0600
user = vmail
}
}
service dict {
unix_listener dict {
mode = 0600
user = vmail
}
}
service imap-login {
inet_listener imaps {
port = 0
}
process_min_avail = 2
service_count = 0
}
service imap {
executable = imap postlogin
}
service lmtp {
process_min_avail = 2
unix_listener /var/spool/postfix/private/dovecot-lmtp {
group = postfix
mode = 0660
user = postfix
}
user = vmail
}
service postlogin {
executable = script-login /home/vmail/bin/dovecot-postlogin.sh
user = vmail
}
ssl = required
ssl_cert = </etc/ssl/certs/dovecot.pem
ssl_key = </etc/ssl/private/dovecot.pem
userdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
verbose_proctitle = yes
protocol lmtp {
mail_plugins = quota virtual fts fts_lucene sieve
}
protocol imap {
mail_max_userip_connections = 20
mail_plugins = quota virtual fts fts_lucene imap_quota antispam mail_log
notify
}