Hey there.
(Lesson to self: Don't try to be cute. Somehow a trademark sign breaks my setup and the rest of the mail is discarded? Sorry for the previous, incomplete post)
Lurking most of the time here, currently I'm trying to make FTS work. As far as I understand [1], squat is deprecated, solr is a rather big dependency for my 'friends & family' type of installation: Lucene it is!
My problem: The lucene backend isn't working, I get this error whenever I try to access it (be it doveadm fts or a search, triggering an index):
# doveadm fts rescan -u dar@darklajid.de doveadm(dar@darklajid.de): Error: fts: Failed to initialize backend 'lucene': Unknown backend doveadm(dar@darklajid.de): Error: fts not enabled for user's namespace (null)
Any ideas what I might be doing wrong here? All the details I could think of are below, any help would be appreciated.
Regards, Ben
--
Package information
# pkg info dovecot2 dovecot2-2.2.10 Name : dovecot2 Version : 2.2.10 Installed on : Mon Mar 31 17:14:26 CEST 2014 Origin : mail/dovecot2 Architecture : freebsd:10:x86:64 Prefix : /usr/local Categories : mail ipv6 Licenses : MIT or LGPL21 Maintainer : bra@fsn.hu WWW : http://www.dovecot.org/ Comment : Secure and compact IMAP and POP3 servers Options : DOCS : off EXAMPLES : off GSSAPI : off KQUEUE : on LDAP : off LIBWRAP : off LUCENE : on MYSQL : off PGSQL : on SOLR : off SQLITE : off SSL : on VPOPMAIL : off Shared Libs required: libssl.so.8 libpq.so.5 libdovecot.so.0 libdovecot-storage.so.0 libdovecot-login.so.0 libdovecot-lda.so.0 libcrypto.so.8 libclucene-shared.so.1 libclucene-core.so.1 Shared Libs provided: libssl_iostream_openssl.so libdovecot.so.0 libdovecot-storage.so.0 libdovecot-sql.so.0 libdovecot-login.so.0 libdovecot-lda.so.0 libdovecot-compression.so.0 libauthdb_imap.so lib95_imap_stats_plugin.so lib90_stats_plugin.so lib30_imap_zlib_plugin.so lib21_fts_squat_plugin.so lib21_fts_lucene_plugin.so lib20_zlib_plugin.so lib20_virtual_plugin.so lib20_replication_plugin.so lib20_mailbox_alias_plugin.so lib20_mail_log_plugin.so lib20_listescape_plugin.so lib20_fts_plugin.so lib20_expire_plugin.so lib20_doveadm_fts_plugin.so lib20_doveadm_fts_lucene_plugin.so lib20_autocreate_plugin.so lib15_notify_plugin.so lib11_trash_plugin.so lib11_imap_quota_plugin.so lib10_quota_plugin.so lib10_doveadm_quota_plugin.so lib10_doveadm_expire_plugin.so lib10_doveadm_acl_plugin.so lib05_snarf_plugin.so lib05_pop3_migration_plugin.so lib02_lazy_expunge_plugin.so lib02_imap_acl_plugin.so lib01_acl_plugin.so
--
Sure enough, the libraries are there/in places that look fine to me:
# pkg info -l dovecot2 | grep -i fts /usr/local/lib/dovecot/doveadm/lib20_doveadm_fts_lucene_plugin.a /usr/local/lib/dovecot/doveadm/lib20_doveadm_fts_lucene_plugin.la /usr/local/lib/dovecot/doveadm/lib20_doveadm_fts_lucene_plugin.so /usr/local/lib/dovecot/doveadm/lib20_doveadm_fts_plugin.a /usr/local/lib/dovecot/doveadm/lib20_doveadm_fts_plugin.la /usr/local/lib/dovecot/doveadm/lib20_doveadm_fts_plugin.so /usr/local/lib/dovecot/lib20_fts_plugin.a /usr/local/lib/dovecot/lib20_fts_plugin.la /usr/local/lib/dovecot/lib20_fts_plugin.so /usr/local/lib/dovecot/lib21_fts_lucene_plugin.a /usr/local/lib/dovecot/lib21_fts_lucene_plugin.la /usr/local/lib/dovecot/lib21_fts_lucene_plugin.so /usr/local/lib/dovecot/lib21_fts_squat_plugin.a /usr/local/lib/dovecot/lib21_fts_squat_plugin.la /usr/local/lib/dovecot/lib21_fts_squat_plugin.so
--
Doveconf:
# 2.2.10: /usr/local/etc/dovecot/dovecot.conf # OS: FreeBSD 10.0-RELEASE amd64 ufs first_valid_uid = 1 login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e %c %k mail_home = /var/vmail/%d/%n mail_location = maildir:/var/vmail/%d/%n/Maildir mail_plugins = fts 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 ihave namespace { inbox = yes location = mailbox Drafts { auto = no special_use = \Drafts } mailbox Sent { auto = subscribe special_use = \Sent } mailbox Spam { auto = subscribe special_use = \Junk } mailbox Trash { auto = create special_use = \Trash } prefix = separator = / } passdb { args = /usr/local/etc/dovecot/dovecot-sql.conf.ext driver = sql } plugin { antispam_backend = dspam antispam_dspam_args = --user;%Lu;--source=error;--signature=%%s antispam_dspam_binary = /usr/local/bin/dspamc antispam_dspam_notspam = --class=innocent antispam_dspam_result_header = X-DSPAM-Result antispam_dspam_spam = --class=spam antispam_signature = X-DSPAM-Signature antispam_signature_missing = error antispam_spam = Spam;Junk antispam_trash = trash;Trash fts = lucene fts_lucene = whitespace_chars=@. sieve = ~/.dovecot.sieve sieve_before = /usr/local/etc/dovecot/sieve/before sieve_dir = ~/sieve } postmaster_address = postmaster@ben.sh protocols = imap lmtp sieve service auth-worker { user = vmail } service auth { unix_listener /var/prosody/private/auth { group = prosody mode = 0660 user = prosody } unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } unix_listener auth-master { group = postfix mode = 0660 user = postfix } unix_listener auth-userdb { group = vmail mode = 0660 user = vmail } user = dovecot } service imap-login { inet_listener imap { port = 143 } inet_listener imaps { port = 993 ssl = yes } } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0600 user = postfix } user = vmail } service managesieve-login { inet_listener sieve { port = 4190 } } service managesieve { process_limit = 128 } service pop3-login { inet_listener pop3 { port = 0 } inet_listener pop3s { port = 0 } } ssl = required ssl_cert = </usr/local/etc/dovecot/ssl/certs/ben.sh.pem ssl_cipher_list = EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4 ssl_key = </usr/local/etc/dovecot/ssl/private/ben.sh.key userdb { args = /usr/local/etc/dovecot/dovecot-sql.conf.ext driver = sql } protocol sieve { mail_max_userip_connections = 10 managesieve_max_compile_errors = 5 } protocol lmtp { mail_plugins = quota sieve } protocol imap { mail_plugins = fts fts_lucene quota imap_quota antispam }