[ 
https://issues.apache.org/jira/browse/SOLR-15579?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Timothy Potter resolved SOLR-15579.
-----------------------------------
    Fix Version/s: 8.10
                   main (9.0)
       Resolution: Fixed

> SQL WHERE filter with 20 or more values in the IN clause results in no 
> filtering on that field
> ----------------------------------------------------------------------------------------------
>
>                 Key: SOLR-15579
>                 URL: https://issues.apache.org/jira/browse/SOLR-15579
>             Project: Solr
>          Issue Type: Bug
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: Parallel SQL
>            Reporter: Timothy Potter
>            Assignee: Timothy Potter
>            Priority: Major
>              Labels: RobustSQL
>             Fix For: main (9.0), 8.10
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> Calcite has a default threshold of 20 for the number of values in an {{IN}} 
> clause. If this threshold is reached, then Calcite transforms the IN clause 
> into an inline table + sub-query which is not handled by {{SolrFilter}}, so 
> that filter clause gets dropped from the resulting query to Solr, see:
> https://github.com/apache/calcite/blob/master/core/src/main/java/org/apache/calcite/sql2rel/SqlToRelConverter.java#L1143
> The easiest solution is to update the 
> {{config.withInSubQueryThreshold(Integer.MAX_VALUE)}}
> I think we should also explore how to work with the sub-query against the 
> inline table if possible.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@solr.apache.org
For additional commands, e-mail: issues-h...@solr.apache.org

Reply via email to