Does fts_lucene need fts_squat?
Hi ML! Please look at this:
- I've got no lucene-index:
# ls /dane/domeny/mejor.pl/mail/marcin/.maildir/lucene-indexes ls: cannot access /dane/domeny/mejor.pl/mail/marcin/.maildir/lucene-indexes: No such file or directory
- run search in body:
echo -e "a select bugzilla\na search body flto\na logout\n" | /usr/libexec/dovecot/imap -u marcin@mejor.pl
- PREAUTH [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS BINARY MOVE SEARCH=FUZZY NOTIFY SPECIAL-USE COMPRESS=DEFLATE QUOTA] Logged in as marcin@mejor.pl
- FLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk Old $label1 $label2 $label3 $label4 $label5 ae_autoextract)
- OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk Old $label1 $label2 $label3 $label4 $label5 ae_autoextract \*)] Flags permitted.
- 5311 EXISTS
- 0 RECENT
- OK [UNSEEN 4910] First unseen.
- OK [UIDVALIDITY 1246465819] UIDs valid
- OK [UIDNEXT 17871] Predicted next UID
- OK [HIGHESTMODSEQ 16914] Highest a OK [READ-WRITE] Select completed (0.005 secs).
- SEARCH 366 380 2132 2515 2548 2551 2566 2567 2589 2612 2615 2617 3678 3696 4538 a OK Search completed (2.768 secs).
- BYE Logging out a OK Logout completed. imap(marcin@mejor.pl) <>: Info: Disconnected: Logged out in=45 out=1084
- still doesn't have lucene indexes:
# ls /dane/domeny/mejor.pl/mail/marcin/.maildir/lucene-indexes ls: cannot access /dane/domeny/mejor.pl/mail/marcin/.maildir/lucene-indexes: No such file or directory
# doveadm index -A "*" # ls /dane/domeny/mejor.pl/mail/marcin/.maildir/lucene-indexes ls: cannot access /dane/domeny/mejor.pl/mail/marcin/.maildir/lucene-indexes: No such file or directory
Now I'm changin 10-mail.conf: -mail_plugins = fts fts_lucene quota notify mail_log stats zlib +mail_plugins = fts fts_squat fts_lucene quota notify mail_log stats zlib
Reloading dovecot and:
- # doveadm index -A "*"
- # ls /dane/domeny/mejor.pl/mail/marcin/.maildir/lucene-indexes _0.cfs segments_3 segments.gen
Now something appears. But search returns no hit:
# echo -e "a select bugzilla\na search body flto\na logout\n" | /usr/libexec/dovecot/imap -u marcin@mejor.pl
- PREAUTH [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS THREAD=ORDEREDSUBJECT MULTIAPPEND URL-PARTIAL CATENATE UNSELECT CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS BINARY MOVE SEARCH=FUZZY NOTIFY SPECIAL-USE COMPRESS=DEFLATE QUOTA] Logged in as marcin@mejor.pl
- FLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk Old $label1 $label2 $label3 $label4 $label5 ae_autoextract)
- OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft NonJunk Old $label1 $label2 $label3 $label4 $label5 ae_autoextract \*)] Flags permitted.
- 5311 EXISTS
- 0 RECENT
- OK [UNSEEN 4910] First unseen.
- OK [UIDVALIDITY 1246465819] UIDs valid
- OK [UIDNEXT 17871] Predicted next UID
- OK [HIGHESTMODSEQ 16914] Highest a OK [READ-WRITE] Select completed (0.008 secs).
- SEARCH a OK Search completed (0.004 secs).
- BYE Logging out a OK Logout completed. imap(marcin@mejor.pl) <>: Info: Disconnected: Logged out in=45 out=1011
Also probably I mess something in index files. I've added fts_lucene earlier, then removed /lucene-indexes dir. Tried to do doveadm index, (does doeveadm fts rescan/optimize work? I didn't notice that mentioned commands do something with fts indexes (both squat and lucene).
Marcin
# 2.2.18: /etc/dovecot/dovecot.conf # Pigeonhole version 0.4.8 (0c4ae064f307+) # OS: Linux 4.1.6-hardened x86_64 Gentoo Base System release 2.2 auth_cache_size = 1 k auth_master_user_separator = * auth_mechanisms = login digest-md5 cram-md5 plain deliver_log_format = msgid=%m: from=%f: phys=%p: virt=%w %$ dict { quota = pgsql:/etc/dovecot/dovecot-dict-sql.conf.ext } first_valid_uid = 8 last_valid_uid = 8 lda_mailbox_autocreate = yes lda_mailbox_autosubscribe = yes mail_attachment_dir = /dane/domeny/zalaczniki mail_attachment_min_size = 10000 k mail_cache_min_mail_count = 20 mail_gid = mail mail_log_prefix = "%s(%u) <%{session}>: " mail_plugins = fts fts_squat fts_lucene quota notify mail_log stats zlib mail_prefetch_count = 20 mail_privileged_group = mail mail_uid = mail mailbox_list_index = yes maildir_stat_dirs = yes managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include vari ables body enotify environment mailbox date index ihave duplicate mdbox_preallocate_space = yes mdbox_rotate_interval = 60 days mdbox_rotate_size = 50 M namespace inbox { inbox = yes list = yes location = mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { auto = subscribe special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { auto = subscribe special_use = \Trash } prefix = separator = . subscriptions = yes } passdb { args = /etc/dovecot/.master.user driver = passwd-file master = yes pass = yes } passdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } plugin { fts = lucene fts_lucene = whitespace_chars=@. fts_squat = partial=4 full=10 quota = dict:User quota::proxy::quota sieve = file:~/sieve;active=~/.dovecot.sieve stats_command_min_time = 1 mins stats_domain_min_time = 12 hours stats_ip_min_time = 12 hours stats_memory_limit = 10k stats_refresh = 30 s stats_session_min_time = 15 mins stats_track_cmds = yes stats_user_min_time = 1 hours zlib_save = bz2 zlib_save_level = 2 } postmaster_address = postmaster@mejor.pl protocols = imap pop3 sieve service auth { unix_listener auth-userdb { group = mail mode = 0660 user = root } } service dict { unix_listener dict { user = mail } } service stats { fifo_listener stats-mail { mode = 0600 user = mail } } ssl_cert = </etc/ssl/private/gwiazdka.mejor.pl.pem ssl_key = </etc/ssl/private/gwiazdka.mejor.pl.pem userdb { driver = prefetch } userdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } verbose_proctitle = yes protocol lda { mail_plugins = fts fts_squat fts_lucene quota notify mail_log stats zlib sieve } protocol imap { mail_max_userip_connections = 20 mail_plugins = fts fts_squat fts_lucene quota notify mail_log stats zlib imap_quota imap_stats imap_zlib }
participants (1)
-
Marcin Mirosław