我有以下Elasticsearch查询(通常更大,但去除了导致问题的部分):
{
"query": {
"bool": {
"filter": [{
"bool": {
"must": {
"query": {
"query_string": {
"query": "notsoimportant"
}
}
}
}
}]
}
}
}
我们让它在ES 2.3.5中工作了几个月都没有问题。我们现在想升级到ES 5.6,但是现在此查询失败了:
"type": "parsing_exception",
"reason": "no [query] registered for [query]"
我很难在这里的文档中找到重大更改通知。有人可以a)指出文档中的更改,然后b)重写此查询以使其产生相同的结果吗?
ps:我发现不再filtered
个查询,但是我发现合并在一起的query_string
和filter
查询没有任何变化。
答案 0 :(得分:1)
您需要删除query
子句中的must
。您的查询需要看起来像这样
{
"query": {
"bool": {
"filter": [{
"bool": {
"must": {
"query_string": {
"query": "notsoimportant"
}
}
}
}]
}
}
}