簡體   English   中英

升級到5.6后,過濾器中的Elasticsearch query_string失敗

[英]Elasticsearch query_string in filter fails after upgrade to 5.6

我有以下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_stringfilter查詢合並的任何更改。

您需要刪除must子句中的query 您的查詢需要看起來像這樣

{
    "query": {
        "bool": {
            "filter": [{
                "bool": {
                    "must": {
                        "query_string": {
                            "query": "notsoimportant"
                        }
                    }
                }
            }]
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM