【发布时间】:2022-01-08 00:48:13
【问题描述】:
我正在使用 7.10.2 版本的 Maven-org-elasticsearch-client_elasticsearch-rest-high-level-client 版本,并且 WildcardQueryBuilder 应该使用不区分大小写的属性。以下是我的代码 sn-p,我在执行我的 ES 搜索请求时收到“Elasticsearch exception [type=parsing_exception,reason=[wildcard] query does not support [case_insensitive]]”
private BoolQueryBuilder translateSearchFilter(final Filter filter) {
final BoolQueryBuilder searchQuery = new BoolQueryBuilder();
searchQuery.must(new WildcardQueryBuilder(filter.getDimension(), filter.getQuery().getValue())
.caseInsensitive(!filter.getQuery().isCaseSensitive()));
return searchQuery;
}
异常日志
"exception": " ElasticsearchStatusException[Elasticsearch exception [type=x_content_parse_exception, reason=[1:102] [bool] failed to parse field [must]]]; nested: ElasticsearchException[Elasticsearch exception [type=parsing_exception, reason=[wildcard] query does not support [case_insensitive]]];\n\tat org.elasticsearch.rest.BytesRestResponse.errorFromXContent(BytesRestResponse.java:187)\n\tat org.elasticsearch.client.RestHighLevelClient.parseEntity(RestHighLevelClient.java:1911)\n\tat org.elasticsearch.client.RestHighLevelClient.parseResponseException(RestHighLevelClient.java:1888)\n\tat org.elasticsearch.client.RestHighLevelClient.internalPerformRequest(RestHighLevelClient.java:1645)\n\tat org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighLevelClient.java:1602)\n\tat org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEntity(RestHighLevelClient.java:1572)\n\tat org.elasticsearch.client.RestHighLevelClient.search(RestHighLevelClient.java:1088)\n\tat com.amazon.atvomniaservice.elasticsearch.ElasticSearchClient.search(ElasticSearchClient.java:52)\n\tat com.amazon.atvomniaservice.elasticsearch.ElasticSearchQueryRunner.submit(ElasticSearchQueryRunner.java:30)\n\tat
【问题讨论】:
标签: elasticsearch elasticsearch-query resthighlevelclient