Since reporting this (from the wrong account, sorry), I've tried to
investigate whether the problem exists in 2.2.9. While building 2.2.9
was no problem, I balked at actually installing it for fear of causing
trouble with future system updates. (Or current operation, for that matter.)
Could somebody please check whether this is problem is already fixed?
On 12/6/13, 8:33 AM, email-from-bobby wrote:
A negated subject search on an empty folder causes an assertion
failure in doveadm. To reproduce:
bash-3.2# doveadm mailbox create -u ephraim "Freshly Empty"
bash-3.2# doveadm search -u ephraim mailbox "Freshly Empty" NOT
subject '***JUNK MAIL***'
doveadm(ephraim): Panic: file mail-index-map.c: line 548
(mail_index_map_lookup_seq_range): assertion failed: (first_uid <=
last_uid\
)
doveadm(ephraim): Error: Raw backtrace: 2
libdovecot.0.dylib 0x0000000100347463
default_fatal_handler + 486 -> 3 \
libdovecot.0.dylib 0x00000001003472c0
default_fatal_handler + 67 -> 4 libdovecot.0.dylib
0x000\
0000100347705 i_fatal + 0 -> 5 libdovecot-storage.0.dylib
0x00000001002a799f mail_index_map_lookup_seq_range + 309 -> 6 \
libdovecot-storage.0.dylib 0x00000001002b6d4f
mail_index_lookup_seq_range + 12 -> 7
lib20_fts_plugin.so \
0x00000001003fe325 fts_search_lookup + 3307 -> 8
lib20_fts_plugin.so 0x00000001003fddfb
fts_search_lookup + 1985 -\
> 9 lib20_fts_plugin.so 0x00000001003fd6e2
fts_search_lookup + 168 -> 10 lib20_fts_plugin.so 0x00\
000001003ff148 fts_mailbox_allocated + 1139 -> 11
doveadm 0x00000001001dd3d2
doveadm_mail_iter_init + 1\
99 -> 12 doveadm 0x00000001001df3ce cmd_search_run + 138 -> 13
doveadm 0x0\
0000001001d94f9 doveadm_mail_next_user + 196 -> 14
doveadm 0x00000001001d9ad1
doveadm_mail_try_run + 77\
6 -> 15 doveadm 0x00000001001e1a09 main +
1150 -> 16 libdyld.dylib 0x00007fff915\
ba5fd start + 1 -> 17 ??? 0x0000000000000009 0x0 + 9
Abort trap: 6
bash-3.2#
A positive search is no problem:
bash-3.2# doveadm search -u ephraim mailbox "Freshly Empty" subject
'***JUNK MAIL***'
bash-3.2#
Version and configuration info:
bash-3.2#
/Applications/Server.app/Contents/ServerRoot/usr/sbin/dovecotd --version
2.2.5
bash-3.2#
/Applications/Server.app/Contents/ServerRoot/usr/sbin/dovecotd -n
# 2.2.5: /Library/Server/Mail/Config/dovecot/dovecot.conf
# OS: Darwin 13.0.0 x86_64 hfs
auth_mechanisms = cram-md5 login apop plain digest-md5
auth_realms = mail.vishniac.com
auth_socket_path = /var/run/dovecot/auth-userdb
auth_username_format = %n
debug_log_path = /Library/Logs/Mail/mail-debug.log
default_internal_user = _dovecot
default_login_user = _dovenull
disable_plaintext_auth = no
first_valid_gid = 6
first_valid_uid = 6
hostname = mail.vishniac.com
imap_id_log = *
imap_id_send = "name" * "version" *
imap_urlauth_submit_user = submit
info_log_path = /Library/Logs/Mail/mail-info.log
log_path = /Library/Logs/Mail/mail-err.log
login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e %c
mail_access_groups = mail
mail_attribute_dict =
file:/Library/Server/Mail/Data/attributes/attributes.dict
mail_location = maildir:/Library/Server/Mail/Data/mail/users/%u
mail_log_prefix = "%s(pid %p user %u): "
mail_plugins = quota zlib acl fts fts_sk
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
mdbox_rotate_size = 200 M
namespace acl-mailboxes {
list = children
location =
maildir:/Library/Server/Mail/Data/mail/users/%%u:INDEX=/Library/Server/Mail/Data/mail/shared/%%u
prefix = shared.%%u.
separator = .
subscriptions = no
type = shared
}
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 =
}
namespace list-archives {
list = children
location =
maildir:/Library/Server/Mail/Data/listserver/messages/archive/lists/%%u:INDEX=/Library/Server/Mail/Data/listserver/mess\
ages/archive/shared/%%u
prefix = archives.%%u.
separator = .
subscriptions = no
type = shared
}
passdb {
driver = od
}
passdb {
args = /Library/Server/Mail/Config/dovecot/submit.passdb
driver = passwd-file
}
plugin {
acl =
vfile:/Library/Server/Mail/Config/dovecot/global-acls:cache_secs=300
acl_shared_dict =
file:/Library/Server/Mail/Data/shared/shared-mailboxes
fts = sk
quota = maildir:User quota
quota_warning = storage=100%% quota-exceeded %u
sieve = /Library/Server/Mail/Data/rules/%u/dovecot.sieve
sieve_dir = /Library/Server/Mail/Data/rules/%u
stats_refresh = 30 secs
stats_track_cmds = yes
}
postmaster_address = postmas...@vishniac.com
protocols = imap pop3 lmtp sieve
quota_full_tempfail = yes
service auth {
extra_groups = _keytabusers
idle_kill = 15 mins
unix_listener auth-userdb {
user = _dovecot
}
}
service dict {
unix_listener dict {
user = _dovecot
}
}
service dns_client {
unix_listener dns-client {
mode = 0600
}
}
service imap-login {
inet_listener imap {
port = 143
}
inet_listener imaps {
port = 993
ssl = yes
}
service_count = 0
}
service imap {
client_limit = 5
process_limit = 20
service_count = 0
}
service indexer-worker {
user = _dovecot
}
service lmtp {
unix_listener lmtp {
mode = 0600
}
}
service managesieve-login {
inet_listener sieve {
port = 4190
}
}
service pop3-login {
inet_listener pop3 {
port = 110
}
inet_listener pop3s {
port = 995
ssl = yes
}
}
service pop3 {
client_limit = 5
process_limit = 200
service_count = 0
}
service quota-exceeded {
executable = script
/Applications/Server.app/Contents/ServerRoot/usr/libexec/dovecot/quota-exceeded.sh
unix_listener quota-exceeded {
group = mail
mode = 0660
user = _dovecot
}
user = _dovecot
}
service quota-warning {
executable = script
/Applications/Server.app/Contents/ServerRoot/usr/libexec/dovecot/quota-warning.sh
unix_listener quota-warning {
group = mail
mode = 0660
user = _dovecot
}
user = _dovecot
}
service stats {
fifo_listener stats-mail {
mode = 0600
user = _dovecot
}
}
ssl_ca =
</etc/certificates/mail.vishniac.com.6BC35F87D55C160F0933F54763846F6CC1EB5A81.chain.pem
ssl_cert =
</etc/certificates/mail.vishniac.com.6BC35F87D55C160F0933F54763846F6CC1EB5A81.cert.pem
ssl_cipher_list = ALL:!LOW:!SSLv2:!EXP:!aNULL:!ADH:!eNULL
ssl_key =
</etc/certificates/mail.vishniac.com.6BC35F87D55C160F0933F54763846F6CC1EB5A81.key.pem
ssl_key_path =
/etc/certificates/mail.vishniac.com.6BC35F87D55C160F0933F54763846F6CC1EB5A81.key.pem
userdb {
args =
partition=/Library/Server/Mail/Config/dovecot/partition_map.conf
enforce_quotas=no
driver = od
}
userdb {
args = /Library/Server/Mail/Config/dovecot/submit.passdb
driver = passwd-file
}
verbose_proctitle = yes
protocol lmtp {
mail_plugins = quota zlib acl fts fts_sk sieve
}
protocol lda {
mail_plugins = quota zlib acl fts fts_sk sieve
}
protocol imap {
mail_max_userip_connections = 20
mail_plugins = quota zlib acl fts fts_sk imap_acl imap_quota imap_zlib
}
protocol pop3 {
mail_max_userip_connections = 6
}
bash-3.2#