问题描述
我正在使用 elasticsearch java Api 并且我正在尝试运行此查询来检索结果。但我正在解析异常。 你能帮我找出问题出在哪里吗? 我会很感激
{
"size": 0,"query": {
"bool": {
"must": [{
"query_string": {
"query": "data~ AND gaps~","default_field": "all_muses","fields": [],"type": "best_fields","default_operator": "or","max_determinized_states": 10000,"enable_position_increments": true,"fuzziness": "AUTO","fuzzy_prefix_length": 0,"fuzzy_max_expansions": 50,"phrase_slop": 0,"escape": false,"auto_generate_synonyms_phrase_query": true,"fuzzy_transpositions": true,"boost": 1.0
}
}
],"adjust_pure_negative": true,"boost": 1.0
}
},"aggregations": {
"groupBySerie": {
"terms": {
"field": "titreSerie","size": 6,"min_doc_count": 1,"shard_min_doc_count": 0,"show_term_doc_count_error": false,"order": [{
"_count": "desc"
},{
"_key": "asc"
}
]
},"aggregations": {
"groupBySf": {
"terms": {
"field": "sousFamille","size": 10,"execution_hint": "global_ordinals_low_cardinality","order": [{
"_count": "desc"
},{
"_key": "asc"
}
]
}
}
}
}
}
}
这是我得到的例外
ElasticsearchStatusException[Elasticsearch exception [type=search_phase_execution_exception,reason=all shards Failed]]; nested: ElasticsearchException[Elasticsearch exception
[type=parse_exception,reason=parse_exception: Encountered " ":" ": "" at line 1,column 36.
20:55:55,464 INFO [stdout] (http-localhost/127.0.0.1:8080-3) Was expecting one of:
20:55:55,464 INFO [stdout] (http-localhost/127.0.0.1:8080-3) <NOT> ...
20:55:55,464 INFO [stdout] (http-localhost/127.0.0.1:8080-3) "+" ...
20:55:55,464 INFO [stdout] (http-localhost/127.0.0.1:8080-3) "-" ...
20:55:55,465 INFO [stdout] (http-localhost/127.0.0.1:8080-3) <BAREOPER> ...
20:55:55,465 INFO [stdout] (http-localhost/127.0.0.1:8080-3) "(" ...
20:55:55,465 INFO [stdout] (http-localhost/127.0.0.1:8080-3) "*" ...
20:55:55,465 INFO [stdout] (http-localhost/127.0.0.1:8080-3) <QUOTED> ...
20:55:55,465 INFO [stdout] (http-localhost/127.0.0.1:8080-3) <TERM> ...
20:55:55,465 INFO [stdout] (http-localhost/127.0.0.1:8080-3) <PREFIXTERM> ...
20:55:55,465 INFO [stdout] (http-localhost/127.0.0.1:8080-3) <WILDTERM> ...
20:55:55,465 INFO [stdout] (http-localhost/127.0.0.1:8080-3) <REGEXPTERM> ...
20:55:55,465 INFO [stdout] (http-localhost/127.0.0.1:8080-3) "[" ...
20:55:55,465 INFO [stdout] (http-localhost/127.0.0.1:8080-3) "{" ...
20:55:55,465 INFO [stdout] (http-localhost/127.0.0.1:8080-3) <NUMBER> ...
20:55:55,466 INFO [stdout] (http-localhost/127.0.0.1:8080-3) "*" ...
20:55:55,466 INFO [stdout] (http-localhost/127.0.0.1:8080-3) ]];
“我正在使用 elasticsearch java Api 并且我正在尝试运行此查询以检索结果。但我正在解析异常。 你能帮我找出问题出在哪里吗? 我将不胜感激”
解决方法
execution_hint
参数不接受 global_ordinals_low_cardinality
值,而只接受 map
和 global_ordinals
。
您需要确保客户端 Java API 的版本与 ES 集群的版本同步,因为您似乎使用的是旧客户端 Java API。