Indexing Mail faster

Kevin Laurie superinterstellar at gmail.com
Wed Jan 28 02:31:22 UTC 2015


Also tried to reload the config but still getting slow search.
Just tried to reindex the box by running

dovecot index -u user at email.net inbox

I am still getting searches close to 2:45 minutes. It seems strange.

A smaller inbox took less time:-


. OK [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 SPECIAL-USE BINARY MOVE QUOTA] Logged in
. search text hello
. BAD No mailbox selected.
. select inbox
* FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
* OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft \*)] Flags
permitted.
* 4825 EXISTS
* 66 RECENT
* OK [UNSEEN 3667] First unseen.
* OK [UIDVALIDITY 1414486440] UIDs valid
* OK [UIDNEXT 4826] Predicted next UID
* OK [NOMODSEQ] No permanent modsequences
. OK [READ-WRITE] Select completed (0.068 secs).
. search text hello
* OK Searched 50% of the mailbox, ETA 0:09
* OK Searched 95% of the mailbox, ETA 0:00
* SEARCH 20 21 22 23 24 32 39 40 41 42 45 48 49 50 59 60 270 373 428 576
585 624 749 756 770 776 798 829 849 917 927 928 934 971 981 983 984 1049
1062 1084 1095 1108 1186 1202 1203 1204 1212 1214 1278 1320 1345 1364 1365
1366 1367 1368 1384 1431 1456 1463 1480 1484 1485 1486 1507 1510 1525 1549
1550 1567 1574 1607 1608 1612 1613 1649 1701 1705 1711 1722 1765 1777 1826
1846 1856 1885 1889 1895 1983 1985 1986 2020 2022 2025 2064 2171 2175 2176
2177 2190 2224 2273 2274 2287 2299 2300 2313 2329 2338 2433 2434 2437 2440
2499 2574 2590 2595 2617 2618 2624 2625 2626 2627 2650 2652 2657 2701 2735
2785 2791 2792 2858 2872 2873 2875 2878 2929 3196 3242 3279 3325 3326 3327
3328 3345 3406 3408 3455 3456 3655 3679 3722 3723 3731 3792 3798 3812 3841
4085 4137 4192 4379 4708
. OK Search completed (21.478 secs).





On Wed, Jan 28, 2015 at 10:11 AM, Kevin Laurie <superinterstellar at gmail.com>
wrote:

> Dear Thomas,
>
> I have removed the fts plugin.
> See below:-
>
> # dovecot -n
> # 2.2.9: /etc/dovecot/dovecot.conf
> # OS: Linux 3.10.62-xenU-25-0e6777a-x86_64 x86_64 Ubuntu 14.04.1 LTS
> auth_master_user_separator = *
> auth_mechanisms = PLAIN LOGIN
> dict {
>   acl = mysql:/etc/dovecot/dovecot-share-folder.conf
>   quotadict = mysql:/etc/dovecot/dovecot-used-quota.conf
> }
> first_valid_uid = 2000
> last_valid_uid = 2000
> listen = *
> log_path = /var/log/dovecot.log
> mail_debug = yes
> mail_gid = 2000
> mail_location = maildir:/%Lh/Maildir/:INDEX=/%Lh/Maildir/
> mail_plugins = quota
> mail_uid = 2000
> 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 = subscribe
>     special_use = \Drafts
>   }
>   mailbox Junk {
>     auto = subscribe
>     special_use = \Junk
>   }
>   mailbox Sent {
>     auto = subscribe
>     special_use = \Sent
>   }
>   mailbox "Sent Messages" {
>     auto = no
>     special_use = \Sent
>   }
>   mailbox Spam {
>     auto = no
>     special_use = \Junk
>   }
>   mailbox Trash {
>     auto = subscribe
>     special_use = \Trash
>   }
>   prefix =
>   separator = /
>   type = private
> }
> namespace {
>   list = children
>   location = maildir:/%%Lh/Maildir/:INDEX=/%%Lh/Maildir/Shared/%%u
>   prefix = Shared/%%u/
>   separator = /
>   subscriptions = yes
>   type = shared
> }
> passdb {
>   args = /etc/dovecot/dovecot-mysql.conf
>   driver = sql
> }
> passdb {
>   args = /etc/dovecot/dovecot-master-users-password
>   driver = passwd-file
>   master = yes
> }
> plugin {
>   acl = vfile
>   acl_shared_dict = proxy::acl
>   auth_socket_path = /var/run/dovecot/auth-master
>   quota = dict:user::proxy::quotadict
>   quota_rule = *:storage=1G
>   quota_warning = storage=85%% quota-warning 85 %u
>   quota_warning2 = storage=90%% quota-warning 90 %u
>   quota_warning3 = storage=95%% quota-warning 95 %u
>   sieve = /%Lh/sieve/dovecot.sieve
>   sieve_default = /var/vmail/sieve/dovecot.sieve
>   sieve_dir = /%Lh/sieve
>   sieve_global_dir = /var/vmail/sieve
> }
> protocols = pop3 imap sieve lmtp
> service auth {
>   unix_listener /var/spool/postfix/private/dovecot-auth {
>     group = postfix
>     mode = 0666
>     user = postfix
>   }
>   unix_listener auth-master {
>     group = vmail
>     mode = 0666
>     user = vmail
>   }
>   unix_listener auth-userdb {
>     group = vmail
>     mode = 0660
>     user = vmail
>   }
> }
> service dict {
>   unix_listener dict {
>     group = vmail
>     mode = 0660
>     user = vmail
>   }
> }
> service imap-login {
>   process_limit = 500
>   service_count = 1
> }
> service lmtp {
>   executable = lmtp -L
>   inet_listener lmtp {
>     port = 24
>   }
>   process_min_avail = 5
>   unix_listener /var/spool/postfix/private/dovecot-lmtp {
>     group = postfix
>     mode = 0600
>     user = postfix
>   }
>   user = vmail
> }
> service pop3-login {
>   service_count = 1
> }
> service quota-warning {
>   executable = script /usr/local/bin/dovecot-quota-warning.sh
>   unix_listener quota-warning {
>     group = vmail
>     mode = 0660
>     user = vmail
>   }
> }
> ssl = required
> ssl_cert = </etc/ssl/certs/sicl.net.crt
> ssl_key = </etc/ssl/private/sicl.net.key
> userdb {
>   args = /etc/dovecot/dovecot-mysql.conf
>   driver = sql
> }
> protocol lda {
>   auth_socket_path = /var/run/dovecot/auth-master
>   lda_mailbox_autocreate = yes
>   log_path = /var/log/dovecot-sieve.log
>   mail_plugins = quota sieve
>   postmaster_address = root
> }
> protocol lmtp {
>   info_log_path = /var/log/dovecot-lmtp.log
>   lmtp_save_to_detail_mailbox = yes
>   mail_plugins = quota sieve
>   postmaster_address = postmaster
>   recipient_delimiter = +
> }
> protocol imap {
>   imap_client_workarounds = tb-extra-mailbox-sep
>   mail_plugins = quota imap_quota
> }
> protocol pop3 {
>   mail_plugins = quota
>   pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
>   pop3_uidl_format = %08Xu%08Xv
> }
>
>
>
>
>
>
>
> The search is still the same even after removal. Do you think I have a
> broken search dovecot?
>
> . OK [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 SPECIAL-USE BINARY MOVE QUOTA] Logged in
> . select inbox
> * FLAGS (\Answered \Flagged \Deleted \Seen \Draft $Forwarded)
> * OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft $Forwarded
> \*)] Flags permitted.
> * 49255 EXISTS
> * 30 RECENT
> * OK [UNSEEN 46791] First unseen.
> * OK [UIDVALIDITY 1414214135] UIDs valid
> * OK [UIDNEXT 106490] Predicted next UID
> * OK [NOMODSEQ] No permanent modsequences
> . OK [READ-WRITE] Select completed (0.110 secs).
> . search dear
> . BAD Error in IMAP command SEARCH: Unknown argument DEAR
> . search text hello
> * OK Searched 8% of the mailbox, ETA 1:53
> *
>
> On Tue, Jan 27, 2015 at 6:47 PM, Thomas Leuxner <tlx at leuxner.net> wrote:
>
>> * Kevin Laurie <superinterstellar at gmail.com> 2015.01.27 11:15:
>>
>> Hi Kevin,
>>
>> > # 2.2.9: /etc/dovecot/dovecot.conf
>> > # OS: Linux 3.10.62-xenU-25-0e6777a-x86_64 x86_64 Ubuntu 14.04.1 LTS
>>
>> Although this was released back in 2013, let's assume the core search is
>> not substantially broken for this release.
>>
>> > mail_location = maildir:/%Lh/Maildir/:INDEX=/%Lh/Maildir/
>> > mail_plugins = quota fts
>>
>> As the mail storage looks okay, could you try with the parameter 'fts'
>> removed? We would then have the search hit a vanilla Dovecot without
>> plugins involved...
>>
>> Regards
>> Thomas
>>
>
>


More information about the dovecot mailing list