]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
fts-solr: "highest UID for mailbox" lookup was actually returning "highest UID for...
authorTimo Sirainen <tss@iki.fi>
Fri, 7 Aug 2015 10:32:02 +0000 (13:32 +0300)
committerTimo Sirainen <tss@iki.fi>
Fri, 7 Aug 2015 10:32:02 +0000 (13:32 +0300)
If the default operator was OR instead of AND. This affected indexing mails
in newly created mailboxes.

src/plugins/fts-solr/fts-backend-solr-old.c
src/plugins/fts-solr/fts-backend-solr.c

index d57d0317fdeb28d680c13ab98ddb3d7047149723..dbaf062538b81d4bc32b8437f23ae836bc704739 100644 (file)
@@ -306,10 +306,10 @@ fts_backend_solr_get_last_uid_fallback(struct solr_fts_backend *backend,
        box_name = fts_box_get_root(box, &ns);
 
        mailbox_get_open_status(box, STATUS_UIDVALIDITY, &status);
-       str_printfa(str, "uidv:%u+box:", status.uidvalidity);
+       str_printfa(str, "uidv:%u+AND+box:", status.uidvalidity);
        solr_quote_http(str, box_name);
        solr_add_ns_query_http(str, backend, ns);
-       str_append(str, "+user:");
+       str_append(str, "+AND+user:");
        solr_quote_http(str, ns->user->username);
 
        pool = pool_alloconly_create("solr last uid lookup", 1024);
index f0e19e95743fc3e4c90d7a93874146a522ae31f4..f7c90547a4ff4287cc3e4c7541f3699f81c6305c 100644 (file)
@@ -202,7 +202,7 @@ get_last_uid_fallback(struct fts_backend *_backend, struct mailbox *box,
        if (fts_mailbox_get_guid(box, &box_guid) < 0)
                return -1;
 
-       str_printfa(str, "box:%s+user:", box_guid);
+       str_printfa(str, "box:%s+AND+user:", box_guid);
        if (_backend->ns->owner != NULL)
                solr_quote_http(str, _backend->ns->owner->username);
        else