# Synonym filterを使用していて TooManyClausesを回避するには

**URL:** <https://discuss.elastic.co/t/synonym-filter-toomanyclauses/203720>\
**Category:** 日本語による質問・議論はこちら\
**Created:** [October 15, 2019, 10:57pm UTC](https://discuss.elastic.co/t/synonym-filter-toomanyclauses/203720 "2019-10-15T22:57:59Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![tomoko](https://avatars.discourse-cdn.com/v4/letter/t/a88e57/32.png) [@tomoko](https://discuss.elastic.co/u/tomoko)\
**Post date:** [October 15, 2019, 10:57pm UTC](https://discuss.elastic.co/t/synonym-filter-toomanyclauses/203720/1 "2019-10-15T22:57:59Z")

</div>

kuromoji tokenizerと synonym filterを使っている時、どのようにTooManyClausesを回避することができるでしょう？

設定するべき適切なmax\_clause\_count 値を見つける算出方法はありますでしょうか？あるいは類義語辞書を使う場合、max\_clause\_count値を増やす以外に、この問題を起こさなくする手段がありますでしょうか？

**状況：** Simple Query String がある単語の検索で TooManyClauses でエラーになります。ある単語は max\_clause\_count 値を増やすことで回避できましたが、別の単語ではそれでは不足でさらに増やす必要がありました。フリー入力語が対象ですので、たまたまある単語検索で起きたエラーを回避するmax\_clause\_count値を見つけるこの方式では、きりがなく、確証もなく、困っています。

**補足：** kuromoji tokenizerと synonym filterを使っています。同じ単語の検索でも、synonym filterなしのindexに作り変えればエラーは起きなくなり、synonym filterありでも類義語辞書を小さくすれば、エラーは起きなくなります。synonym filterは使う方針で、類義語辞書も小さくしない方針です。

**環境:**  
Elasticsearch v5.6.8  
/etc/elasticsearch/elasticsearch.yml  
indices.query.bool.max\_clause\_count: 153600

**Query body:**  
{  
"query": {  
"simple\_query\_string": {  
"query": "テキスト",  
"fields": ["field1"],  
}  
}  
}

**Error log:** /var/log/elasticsearch/elasticsearch.log  
org.elasticsearch.index.query.QueryShardException: failed to create query: {  
"simple\_query\_string" : {  
"query" : "テキスト",  
"fields" : [  
"field1^1.0"  
],  
"flags" : -1,  
"default\_operator" : "or",  
"lenient" : false,  
"analyze\_wildcard" : false,  
"boost" : 1.0  
}  
}  
:  
Caused by: org.apache.lucene.search.BooleanQuery$TooManyClauses: maxClauseCount is set to 153600

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [November 12, 2019, 10:58pm UTC](https://discuss.elastic.co/t/synonym-filter-toomanyclauses/203720/2 "2019-11-12T22:58:03Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
