UPDATE β July 9, 2024
Heads up, Solr wranglers! Weβve moved the maxBooleanClauses setting into your solr.xml (in your Solr home directory alongside your cores/collections).
<solr> <int name="maxBooleanClauses">90589</int> <!-- π οΈ Bump your limit here --> <shardHandlerFactory name="shardHandlerFactory" class="HttpShardHandlerFactory"> <int name="socketTimeout">${socketTimeout:600000}</int> <int name="connTimeout">${connTimeout:60000}</int> </shardHandlerFactory> </solr>
π± Symptom
org.apache.solr.common.SolrException: Too many boolean clauses (1025).
- Default limit: 1024 clauses.
- Triggers: large synonym files, wildcard expansions, or overly broad query filters.
π Root Causes
- Synonym explosion: Each synonym generates extra clauses.
- Wildcard & prefix queries:
*or leading wildcards (*term) expand to many terms. - Massive stopword/protword lists: Improperly positioned filters multiply clauses.
π οΈ Solutions
-
Increase
maxBooleanClauses
Adjust insolr.xml(as shown above). -
Trim your word lists
synonyms.txtstopwords.txtprotwords.txt
Remove rarely used terms to reduce clause count.
-
Optimize filter chain
- Apply synonyms at query time using
SynonymGraphFilterFactory, not at index time. - Place stop and prot word filters before wildcard or graph filters.
- Apply synonyms at query time using
-
Avoid expansive wildcards
- Prefer prefix queries (
term*) over leading wildcards. - Use edge n-gram tokenizers for partial matching.
- Prefer prefix queries (
Keep calm and Solr on! πποΈ

