Ошибка Shingle TokenFilter в Elastic Search - PullRequest
0 голосов
/ 21 мая 2019

Я установил модуль smileastic suite на мою установку Magento 2, и я получаю эту ошибку,

Я использую MAMP и эластичный поиск 7.0.1 с Magento 2.3.0

[
    {
        "type": "illegal_argument_exception",
        "reason": "In Shingle TokenFilter the difference between max_shingle_size and min_shingle_size (and +1 if outputting unigrams) must be less than or equal to: [3] but was [9]. This limit can be set by changing the [index.max_shingle_diff] index level setting."
    }
]

1 Ответ

0 голосов
/ 21 мая 2019

Это объяснено в документации:

фильтр токеновых шинглов и ссылка на настройки индекса

Настройка уровня индекса index.max_shingle_diffконтролирует максимально допустимую разницу между max_shingle_size и min_shingle_size.

Поэтому, если вы хотите разрешить разность больше 3, вам нужно обновить max_shingle_diff в настройках индекса через API настроек обновления или при создании индекса.

Значение по умолчанию 3 является консервативным значением во избежание взрыва индекса:)

пример:

PUT /<yourindex>/_settings
{
    "index" : {
        "max_shingle_diff" : 10
    }
}
...