summaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorArne Juul <arnej@verizonmedia.com>2020-06-24 11:50:51 +0000
committerArne Juul <arnej@verizonmedia.com>2020-06-24 11:50:51 +0000
commitd1a307f82cbd9b8c3a59bd160d9e21a59b6fcca1 (patch)
treec298c7801677c5e12cc19460d39b70be3ab23bdc /searchlib
parent6821733667528dddeed658205358f6b9dda12090 (diff)
asserts assumed docid range would not grow
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/vespa/searchlib/tensor/hnsw_index.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/searchlib/src/vespa/searchlib/tensor/hnsw_index.cpp b/searchlib/src/vespa/searchlib/tensor/hnsw_index.cpp
index 36d970dfd01..540a7a86104 100644
--- a/searchlib/src/vespa/searchlib/tensor/hnsw_index.cpp
+++ b/searchlib/src/vespa/searchlib/tensor/hnsw_index.cpp
@@ -227,11 +227,13 @@ HnswIndex::search_layer(const TypedCells& input, uint32_t neighbors_to_find,
NearestPriQ candidates;
uint32_t doc_id_limit = _graph.node_refs.size();
if (filter) {
- assert(filter->size() >= doc_id_limit);
+ doc_id_limit = std::min(filter->size(), doc_id_limit);
}
auto visited = _visited_set_pool.get(doc_id_limit);
for (const auto &entry : best_neighbors.peek()) {
- assert(entry.docid < doc_id_limit);
+ if (entry.docid >= doc_id_limit) {
+ continue;
+ }
candidates.push(entry);
visited.mark(entry.docid);
if (filter && !filter->testBit(entry.docid)) {