diff options
author | Arne Juul <arnej@verizonmedia.com> | 2020-06-24 11:50:51 +0000 |
---|---|---|
committer | Arne Juul <arnej@verizonmedia.com> | 2020-06-24 11:50:51 +0000 |
commit | d1a307f82cbd9b8c3a59bd160d9e21a59b6fcca1 (patch) | |
tree | c298c7801677c5e12cc19460d39b70be3ab23bdc /searchlib | |
parent | 6821733667528dddeed658205358f6b9dda12090 (diff) |
asserts assumed docid range would not grow
Diffstat (limited to 'searchlib')
-rw-r--r-- | searchlib/src/vespa/searchlib/tensor/hnsw_index.cpp | 6 |
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)) { |