dovecot-2.2: fts-sorl: Skip returned duplicate results.
dovecot at dovecot.org
dovecot at dovecot.org
Sat Mar 29 20:45:52 UTC 2014
details: http://hg.dovecot.org/dovecot-2.2/rev/d55ae5d268a2
changeset: 17182:d55ae5d268a2
user: Timo Sirainen <tss at iki.fi>
date: Sat Mar 29 22:45:16 2014 +0200
description:
fts-sorl: Skip returned duplicate results.
Similar to bugfix d63b209737be in fts-lucene.
This caused assert-crash at least when searching from virtual mailbox
because the score array was larger than the actual number of results.
diffstat:
src/plugins/fts-solr/solr-connection.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diffs (15 lines):
diff -r b0359910ec96 -r d55ae5d268a2 src/plugins/fts-solr/solr-connection.c
--- a/src/plugins/fts-solr/solr-connection.c Fri Mar 28 15:59:48 2014 +0200
+++ b/src/plugins/fts-solr/solr-connection.c Sat Mar 29 22:45:16 2014 +0200
@@ -260,8 +260,9 @@
}
result = solr_result_get(ctx, box_id);
- seq_range_array_add(&result->uids, ctx->uid);
- if (ctx->score != 0) {
+ if (seq_range_array_add(&result->uids, ctx->uid)) {
+ /* duplicate result */
+ } else if (ctx->score != 0) {
score = array_append_space(&result->scores);
score->uid = ctx->uid;
score->score = ctx->score;
More information about the dovecot-cvs
mailing list