Прежде всего, отказ от ответственности: мы должны были переехать задолго до Elasticsearch 7.X, но мы делаем прямо сейчас, с 2.4, позор нам.
Что ж, мой случай: я обнаружил, что minimum_should_match
ведет себя иначе, когда заданный параметр больше, чем необязательный. Запрос:
ElasticSearch 2.4:
{
"query": {
"bool": {
"should": [
{
"match": {
"myfield": {
"query": "my_search_value",
"boost": 150
}
}
}
],
"minimum_should_match": 2
}
}
}
Здесь, в ES2.4, давая "minimum_should_match": 2
и просто 1 необязательный, он игнорирует "minimum_should_match": 2
и возвращает все, что соответствует.
НО, теперь то же самое в ES7.1 не дает результатов, я должен поставить "minimum_should_match": 1
, если я хочу получить результаты.
Похоже, ES2.4 устанавливал minimum_should_match
в максимальное количество опций и теперь он больше этого не делает, возможно ли это?
Я пытался найти это в документации ES и журналах изменений, но ничего не смог найти.
Я тоже опубликовал этот вопрос в ES обсудить , но ответа пока нет.