Могу ли я указать поле сведений, если у меня есть исключение индекса эластичного поиска? - PullRequest
0 голосов
/ 24 мая 2019

Я получаю сообщение об ошибке, когда пытаюсь проиндексировать эластичный поиск: получил ответ {'took': 1, 'errors': True, 'items': [{'index': {'_index': 'mapstore-development-products', '_type': 'product', '_id': '776896', 'status': 400, 'error': {'type': 'mapper_parsing_exception', 'reason': 'failed to parse', 'caused_by': {'type': 'number_format_exception', 'reason': 'empty String'}}}}]}

Есть ли способ узнать, какие конкретные поля пусты из этого возвращаемого результата?

1 Ответ

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

Эта проблема вызвана (1) не созданием сопоставления индекса перед публикацией первой записи (2) У вас есть поле (строка) пустое для вашей первой записи, которое позже вы хотите, чтобы оно было числом.

Elasticsearch будет динамически назначать типы вашим полям, если вы заранее не укажете свое отображение.Я не думаю, что вы должны найти конкретное пустое поле.Вместо этого вам следует создать сопоставление для индекса перед публикацией первой записи, поэтому эту проблему следует решить.В вашем случае вам может потребоваться создать новый индекс с правильным отображением и затем переиндексировать.

См. Это:

  1. https://discuss.elastic.co/t/how-to-resolve-numberformatexception-issues-caused-by-an-empty-string/5633
  2. https://medium.com/@eyaldahari/reindex-elasticsearch-documents-is-easier-than-ever-103f63d411c
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...