Error after setting up fts /solr for Open-Xchange

zucca at systemschmiede.com zucca at systemschmiede.com
Sun Mar 22 18:03:41 UTC 2015


Hi List,

i have tried to get fts / solr running with virtual all folder with 
Open-Xchange.
I followed a pretty well written howto from Open-Xchanges Intranet, and 
i first thought everything was running smooth, as the first one or two 
searches  were successful. However now whenever i try to search again 
for something in the virtual "all folders" Open-Xchange tells me:

*Error*
*Folder "virtual.all" has been closed on mail server xxx.xxx.xxx.xxx 
Probably your request took too long.**
*

/var/log/mail.err says:
Mar 22 18:54:24 mailserver dovecot: imap(zucca at foo.bar): Panic: file 
fts-search-serialize.c: line 63 (fts_search_deserialize_add_idx): 
assertion failed: (*idx < buf->used)
Mar 22 18:54:24 mailserver dovecot: imap(zucca at foo.bar): Error: Raw 
backtrace: /usr/lib/dovecot/libdovecot.so.0(+0x6c15f) [0x7f5110f5e15f] 
-> /usr/lib/dovecot/libdovecot.so.0(+0x6c1be) [0x7f5110f5e1be] -> 
/usr/lib/dovecot/libdovecot.so.0(i_fatal+0) [0x7f5110f1740e] -> 
/usr/lib/dovecot/modules/lib20_fts_plugin.so(+0xc847) [0x7f510fb07847] 
-> 
/usr/lib/dovecot/modules/lib20_fts_plugin.so(fts_search_deserialize_add_nonmatches+0x1c) 
[0x7f510fb0799c] -> 
/usr/lib/dovecot/modules/lib20_fts_plugin.so(+0xd263) [0x7f510fb08263] 
-> /usr/lib/dovecot/modules/lib20_fts_plugin.so(+0xd3e6) 
[0x7f510fb083e6] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0xa812e) 
[0x7f511127112e] -> 
/usr/lib/dovecot/libdovecot-storage.so.0(index_storage_search_next_nonblock+0x4b) 
[0x7f51112717bb] -> 
/usr/lib/dovecot/modules/lib20_virtual_plugin.so(virtual_search_next_nonblock+0x13e) 
[0x7f510f8f2a7e] -> 
/usr/lib/dovecot/modules/lib20_virtual_plugin.so(virtual_search_next_nonblock+0x7e) 
[0x7f510f8f29be] -> 
/usr/lib/dovecot/libdovecot-storage.so.0(mailbox_search_next_nonblock+0x27) 
[0x7f511124b277] -> dovecot/imap(+0x1f27f) [0x7f511172527f] -> 
dovecot/imap(imap_search_start+0xfd) [0x7f51117256fd] -> 
dovecot/imap(cmd_sort+0x205) [0x7f511171b6c5] -> 
dovecot/imap(command_exec+0x3c) [0x7f511171fc4c] -> 
dovecot/imap(+0x18c30) [0x7f511171ec30] -> dovecot/imap(+0x18cea) 
[0x7f511171ecea] -> dovecot/imap(client_handle_input+0x115) 
[0x7f511171efb5] -> dovecot/imap(client_input+0x75) [0x7f511171f385] -> 
/usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x4e) [0x7f5110f6efbe] 
-> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0xd7) 
[0x7f5110f6ffb7] -> 
/usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x9) 
[0x7f5110f6f049] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x38) 
[0x7f5110f6f0c8] -> 
/usr/lib/dovecot/libdovecot.so.0(master_service_run+0x13) 
[0x7f5110f1c7b3] -> dovecot/imap(main+0x2ae) [0x7f511171352e] -> 
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xfd) [0x7f5110b85ead] 
-> dovecot/imap(+0xd69d) [0x7f511171369d]
Mar 22 18:54:24 mailserver dovecot: imap(zucca at foo.bar): Fatal: master: 
service(imap): child 6594 killed with signal 6 (core dumps disabled)
Mar 22 18:54:24 mailserver dovecot: imap(zucca at foo.bar): Panic: file 
fts-search-serialize.c: line 63 (fts_search_deserialize_add_idx): 
assertion failed: (*idx < buf->used)
Mar 22 18:54:24 mailserver dovecot: imap(zucca at foo.bar): Error: Raw 
backtrace: /usr/lib/dovecot/libdovecot.so.0(+0x6c15f) [0x7fae1c14c15f] 
-> /usr/lib/dovecot/libdovecot.so.0(+0x6c1be) [0x7fae1c14c1be] -> 
/usr/lib/dovecot/libdovecot.so.0(i_fatal+0) [0x7fae1c10540e] -> 
/usr/lib/dovecot/modules/lib20_fts_plugin.so(+0xc847) [0x7fae1acf5847] 
-> 
/usr/lib/dovecot/modules/lib20_fts_plugin.so(fts_search_deserialize_add_nonmatches+0x1c) 
[0x7fae1acf599c] -> 
/usr/lib/dovecot/modules/lib20_fts_plugin.so(+0xd263) [0x7fae1acf6263] 
-> /usr/lib/dovecot/modules/lib20_fts_plugin.so(+0xd3e6) 
[0x7fae1acf63e6] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0xa812e) 
[0x7fae1c45f12e] -> 
/usr/lib/dovecot/libdovecot-storage.so.0(index_storage_search_next_nonblock+0x4b) 
[0x7fae1c45f7bb] -> 
/usr/lib/dovecot/modules/lib20_virtual_plugin.so(virtual_search_next_nonblock+0x13e) 
[0x7fae1aae0a7e] -> 
/usr/lib/dovecot/modules/lib20_virtual_plugin.so(virtual_search_next_nonblock+0x7e) 
[0x7fae1aae09be] -> 
/usr/lib/dovecot/libdovecot-storage.so.0(mailbox_search_next_nonblock+0x27) 
[0x7fae1c439277] -> dovecot/imap(+0x1f27f) [0x7fae1c91327f] -> 
dovecot/imap(imap_search_start+0xfd) [0x7fae1c9136fd] -> 
dovecot/imap(cmd_sort+0x205) [0x7fae1c9096c5] -> 
dovecot/imap(command_exec+0x3c) [0x7fae1c90dc4c] -> 
dovecot/imap(+0x18c30) [0x7fae1c90cc30] -> dovecot/imap(+0x18cea) 
[0x7fae1c90ccea] -> dovecot/imap(client_handle_input+0x115) 
[0x7fae1c90cfb5] -> dovecot/imap(client_input+0x75) [0x7fae1c90d385] -> 
/usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x4e) [0x7fae1c15cfbe] 
-> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0xd7) 
[0x7fae1c15dfb7] -> 
/usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x9) 
[0x7fae1c15d049] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x38) 
[0x7fae1c15d0c8] -> 
/usr/lib/dovecot/libdovecot.so.0(master_service_run+0x13) 
[0x7fae1c10a7b3] -> dovecot/imap(main+0x2ae) [0x7fae1c90152e] -> 
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xfd) [0x7fae1bd73ead] 
-> dovecot/imap(+0xd69d) [0x7fae1c90169d]
Mar 22 18:54:24 mailserver dovecot: imap(zucca at foo.bar): Fatal: master: 
service(imap): child 6598 killed with signal 6 (core dumps disabled)

I don't even have any fts-search-serialize.c on the system...

Maybe someone is able to help me?
I know we're nearly there, but i can't find anything on this anywhere.
If there's anything else you need to know in order to help, please let 
me know.
Thank you very very much!
Sascha


_this is set under /opt/open-xchange/etc/findbasic.properties for 
Open-Xchange__:_

com.openexchange.find.basic.mail.allMessagesFolder = virtual.all



_grep -v '^ *\(#.*\)\?$' /etc/dovecot/dovecot-sql.conf:_

driver = mysql
connect = host=localhost dbname=dbispconfig user=ispconfig 
password=e04a9349a47706e4f18bee2782349355
default_pass_scheme = CRYPT
password_query = SELECT password FROM mail_user WHERE (login = '%u' OR 
email = '%u') AND disable%Ls = 'n'
user_query = SELECT email as user, maildir as home, CONCAT('maildir:', 
maildir, '/Maildir') as mail, uid, gid, CONCAT('*:storage=', quota, 'B') 
AS quota_rule, CONCAT(maildir, '/.sieve') as sieve FROM mail_user WHERE 
(login = '%u' OR email = '%u') AND `disable%Ls` = 'n'


_||dovecot --version:

_2.2.13


_dovecot -n:

_# 2.2.13: /etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-37-pve x86_64 Debian 7.8 simfs
auth_mechanisms = plain login
disable_plaintext_auth = no
listen = *,[::]
log_timestamp = "%Y-%m-%d %H:%M:%S "
mail_location = maildir:/var/vmail/%d/%n/Maildir
mail_max_userip_connections = 150
mail_plugins = " acl fts fts_solr virtual"
mail_privileged_group = vmail
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
namespace {
   inbox = yes
   location =
   prefix =
   separator = .
   type = private
}
namespace {
   list = children
   location = 
maildir:/var/vmail/%%d/%%n/Maildir:INDEX=/var/vmail/%d/%n/Maildir/shared/%%u
   prefix = Shared/.%%n/.
   separator = .
   subscriptions = no
   type = shared
}
namespace virtual {
   location = virtual:/etc/dovecot/virtual:INDEX=~/virtual
   mailbox all {
     special_use = \All
   }
   prefix = virtual.
   separator = .
}
passdb {
   args = /etc/dovecot/dovecot-sql.conf
   driver = sql
}
plugin {
   acl = vfile
   acl_shared_dict = file:/var/vmail/shared-mailboxes.db
   fts = solr
   fts_autoindex = yes
   fts_solr = url=http://localhost:8090/solr/
   quota = dict:user::file:/var/vmail/%d/%n/.quotausage
   sieve = /var/vmail/%d/%n/.sieve
}
protocols = imap pop3 sieve
service auth {
   unix_listener /var/spool/postfix/private/auth {
     group = postfix
     mode = 0660
     user = postfix
   }
   unix_listener auth-userdb {
     group = vmail
     mode = 0600
     user = vmail
   }
   user = root
}
service imap-login {
   client_limit = 1000
   process_limit = 500
}
ssl_ca = </usr/local/ispconfig/interface/ssl/mail_mailserver_de.ca-bundle
ssl_cert = </etc/postfix/smtpd.cert
ssl_key = </etc/postfix/smtpd.key
ssl_protocols = !SSLv2 !SSLv3
userdb {
   args = /etc/dovecot/dovecot-sql.conf
   driver = sql
}
protocol imap {
   mail_plugins = " acl fts fts_solr virtual imap_acl quota imap_quota"
}
protocol pop3 {
   mail_plugins = quota virtual
   pop3_uidl_format = %08Xu%08Xv
}
protocol lda {
   mail_plugins = sieve quota virtual
}



More information about the dovecot mailing list