問題
デフォルトでは、Elasticsearch は search.allow_expensive_queries
を true に設定します。 しかし、これをfalseに設定すると、コンテンツを検索できなかったり、Liferay Search Blueprintsが機能しないという問題が発生する可能性があります。
のようなエラーが表示されるかもしれません:
java.lang.RuntimeException: org.elasticsearch.ElasticsearchStatusException: ElasticsearchStatusException[Elasticsearch exception [type=search_phase_execution_exception, reason=all shards failed]]; nested: ElasticsearchException[Elasticsearch exception [type=exception, reason=[joining] queries cannot be executed when 'search.allow_expensive_queries' is set to false.]];
Environment
- Elasticsearch
- Liferay 7.0-7.4
解決策
search.allow_expensive_queries
をtrueのままにしておく。 こうすることで、Elasticsearchは、 Date Mathのような、より複雑なクエリを実行できるようになります。
追加情報
会員限定記事
Liferay エンタープライズ サブスクリプションをお持ちのお客様は1500件を超えるベストプラクティス、トラブルシューティング、その他のソリューション記事を閲覧できます。ログインすると、記事全体をお読みいただけます。
ログイン