elasticsearch Elasticsearch 6中对简单\u查询\u字符串查询行为的更改
从Elasticsearch 5.6.8升级到6.2.4后,我注意到simple_query_字符串的行为发生了变化,在这些变化中我似乎找不到记录。如果对这两个版本运行以下命令,您将看到“Test*”将与第5版中的“Test Value”匹配,但在第6版中不再匹配。我是否遗漏了升级说明中的某些内容,是否有办法复制6.X中的5.X行为
elasticsearch Elasticsearch 6中对简单\u查询\u字符串查询行为的更改,
elasticsearch,nest,elasticsearch-6,
elasticsearch,Nest,Elasticsearch 6,从Elasticsearch 5.6.8升级到6.2.4后,我注意到simple_query_字符串的行为发生了变化,在这些变化中我似乎找不到记录。如果对这两个版本运行以下命令,您将看到“Test*”将与第5版中的“Test Value”匹配,但在第6版中不再匹配。我是否遗漏了升级说明中的某些内容,是否有办法复制6.X中的5.X行为 PUT test_query { "mappings": { "test_type": { "properties": {
PUT test_query
{
"mappings": {
"test_type": {
"properties": {
"my_field": {
"type": "text",
"analyzer": "standard"
}
}
}
}
}
POST /test_query/test_type
{
"my_field": "Test Value Here"
}
GET test_query/_search
{
"query": {
"simple_query_string": {
"fields": [
"my_field"
],
"query": "Test *",
"default_operator": "and"
}
}
}
这是一个bug,将在以后的版本中修复。感谢您提供了清晰的示例——我能够很快地重新创建该问题!不过,我已经认输了。:)不过,我看到了一个可能的罪犯。当我对
\u analyze
API运行搜索时,我可以看到单词“test”与5.x和6.x下的文档都匹配。但在5.x中,所得分数加上0,而在6.x中,分数乘以0。查询规范化逻辑()有一个突破性的变化,这可能解释了行为的变化。github问题最终在下一个次要版本中引用了此修复程序