[ 
https://issues.apache.org/jira/browse/LUCENE-7880?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16056082#comment-16056082
 ] 

Adrien Grand commented on LUCENE-7880:
--------------------------------------

bq. If you were writing this from scratch would you advocate the current design?

I suspect I would not have added the limit, but probably more by lack of care 
than because I think it is not useful. Now it's here, and if it is common to 
deal with that large boolean queries then there is a question of whether Lucene 
is the right tool for the job since all the efforts we make at index-time in 
order to make reads sequential at search time and keep the search-time memory 
footprint low are pointless, especially if you're using NIOFSDirectory. So I'm 
on the fence about removing this setting or changing its default value. I agree 
the fact it is static is not nice, but it has the good side-effect that we do 
not have to set options eg. on query parsers in order to make them apply it.

bq. Having a static variable where setting it in one core affects others may 
have made sense N years ago, but now it's generating problems or we wouldn't be 
having this discussion

It wouldn't be an issue if it was a cluster setting? What is the value of 
letting one user generate huge boolean queries and prevent others?

> Make boolean query clause limit configurable per-query
> ------------------------------------------------------
>
>                 Key: LUCENE-7880
>                 URL: https://issues.apache.org/jira/browse/LUCENE-7880
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Yonik Seeley
>
> As we know, the magic BooleanQuery.maxClauseCount has bitten many people over 
> time.
> It's also a static, which really hurts multi-tenancy (i.e. we can't have 
> different settings for different users, clients, or use-cases).
> If we want to keep this static as a default, then at least we should allow it 
> to be overridden on a per-query basis when we know it is the desired behavior 
> and not a bug.
> Perhaps the simplest way to achieve this would be a setter on 
> BooleanQuery.Builder that configures the limit for that instance only?



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to