From 28d728420589b164ed53fc340979686afbf2f50a Mon Sep 17 00:00:00 2001 From: David Sauve Date: Fri, 28 May 2010 14:41:09 -0400 Subject: [PATCH] Added number of terms to consider in more_like_this when using ELITE_SET --- xapian_backend.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/xapian_backend.py b/xapian_backend.py index 0b16691..1e02f48 100755 --- a/xapian_backend.py +++ b/xapian_backend.py @@ -469,9 +469,11 @@ class SearchBackend(BaseSearchBackend): for match in self._get_enquire_mset(database, enquire, 0, end_offset): rset.add_document(match.docid) - - query = xapian.Query(xapian.Query.OP_ELITE_SET, - [expand.term for expand in enquire.get_eset(match.document.termlist_count(), rset, XHExpandDecider())] + + query = xapian.Query( + xapian.Query.OP_ELITE_SET, + [expand.term for expand in enquire.get_eset(match.document.termlist_count(), rset, XHExpandDecider())], + match.document.termlist_count() ) query = xapian.Query( xapian.Query.OP_AND_NOT, [query, DOCUMENT_ID_TERM_PREFIX + get_identifier(model_instance)] @@ -503,7 +505,7 @@ class SearchBackend(BaseSearchBackend): results.append( SearchResult(app_label, module_name, pk, match.percent, weight=match.weight, **model_data) ) - + return { 'results': results, 'hits': matches.get_matches_estimated(),