当我有Elasticsearch索引异常时,可以指定明细字段吗?

时间:2019-05-24 16:04:28

标签: elasticsearch

当我尝试索引elasticsearch时收到错误消息: 得到了回应{'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 :(得分:0)

此问题是由于(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