[
https://issues.apache.org/jira/browse/SOLR-4586?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13611842#comment-13611842
]
Jack Krupansky commented on SOLR-4586:
--------------------------------------
I would note that neither SpanOrQuery or SpanMultiTermQueryWrapper implements a
limit as BooleanQuery does. Shouldn't there be a consistent limit policy
between BooleanQuery and SpanOrQuery, both of which take an arbitrary number of
clauses?
So, I'm back to the proposal that:
1. The boolean query caluse limit be deprecated in 4.x and removed in 5.0, in
both Solr and Lucene.
2. Solr define a default boolean clause limit in 4.x that is much higher than
the Lucene limit.
3. We otherwise preserve the semantics of clause limits for 4.x.
4. Separately consider a query parser option to limit the maximum query size,
in both source length and number of terms.
I would classify the current Solr core-related semantics for the clause limit
as "messy" rather than "buggy". If there is a clear and indisputable "bug" in
the current semantics, fine, let's fix it. The current semantics are a holdover
from the old single-core days when it made no difference that the solrconfig
limit was "for the core" since that was all there was. Sure, that semantics
should have been refined when multiple collections became the norm, but this is
essentially a "by design" by default rather than an outright logic flaw.
Besides, if you know the current semantics and have an app that depends on
them, changing the rules would be a compatibility issue. Easier just to "leave
well enough alone", and properly fix the semantics in 5.0 by completely
removing the unnecessary "feature" - that SpanOrQuery proves is not necessary.
I would agree that there is some (limited) value in specifying a limit to catch
buggy code, but I just don't find it truly persuasive. Or at least not as
persuasive as the annoyance of having the artificially low default and the need
for a user-level config setting that is global for all Lucene indexes in the
same JVM. (Why not make the limit be a Lucene IndexConfig setting? Please
Don't!!).
> Increase default maxBooleanClauses
> ----------------------------------
>
> Key: SOLR-4586
> URL: https://issues.apache.org/jira/browse/SOLR-4586
> Project: Solr
> Issue Type: Improvement
> Affects Versions: 4.2
> Environment: 4.3-SNAPSHOT 1456767M - ncindex - 2013-03-15 13:11:50
> Reporter: Shawn Heisey
> Attachments: SOLR-4586.patch, SOLR-4586.patch, SOLR-4586.patch,
> SOLR-4586.patch
>
>
> In the #solr IRC channel, I mentioned the maxBooleanClauses limitation to
> someone asking a question about queries. Mark Miller told me that
> maxBooleanClauses no longer applies, that the limitation was removed from
> Lucene sometime in the 3.x series. The config still shows up in the example
> even in the just-released 4.2.
> Checking through the source code, I found that the config option is parsed
> and the value stored in objects, but does not actually seem to be used by
> anything. I removed every trace of it that I could find, and all tests still
> pass.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]