Joel Bernstein created SOLR-16858: ------------------------------------- Summary: KnnQParser is parsing filter queries incorrectly Key: SOLR-16858 URL: https://issues.apache.org/jira/browse/SOLR-16858 Project: Solr Issue Type: Bug Security Level: Public (Default Security Level. Issues are Public) Reporter: Joel Bernstein
The KnnQParser is parsing the filter query which limits the rows considered by vector is doing this: {code:java} private Query getFilterQuery() throws SolrException, SyntaxError { boolean isSubQuery = recurseCount != 0; if (!isFilter() && !isSubQuery) { String[] filterQueries = req.getParams().getParams(CommonParams.FQ); if (filterQueries != null && filterQueries.length != 0) { try { List<Query> filters = QueryUtils.parseFilterQueries(req); SolrIndexSearcher.ProcessedFilter processedFilter = req.getSearcher().getProcessedFilter(filters); return processedFilter.filter; {code:java} // Some comments here public String getFoo() { return foo; } {code} } catch (IOException e) { throw new SolrException(SolrException.ErrorCode.SERVER_ERROR, e); } } } return null; } {code} I don't believe this is the behavior we actually want. What we want is to add an "fq" to the local params of the Knn vector search. Here is the example syntax: {code:java} {!knn f=vector topK=10 fq=$kfq}[...]&kfq=myquery {code} -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@solr.apache.org For additional commands, e-mail: issues-h...@solr.apache.org