版本: 6.8-8.9
简而言之,当 Elasticsearch 尝试将值解析为 double 数据类型,但该值不兼容时,就会出现此错误。这可能是由于映射中的数据类型不正确,或者在 double 字段中索引了非数值导致的。要解决此问题,请确保映射中的数据类型与您正在索引的数据相匹配。如果数据类型正确,请检查正在索引的数据中是否存在任何非数值。如有必要,您可能需要在索引之前清理或转换数据。
日志上下文 #
日志 “failed to parse [{}] as a double” 的类名是 MemorySizeValue.java. 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人参考:
if (percent < 0 || percent > 100) {
throw new ElasticsearchParseException("percentage should be in [0-100]; got [{}]"; percentAsString);
}
return ByteSizeValue.ofBytes((long) ((percent / 100) * JvmInfo.jvmInfo().getMem().getHeapMax().getBytes()));
} catch (NumberFormatException e) {
throw new ElasticsearchParseException("failed to parse [{}] as a double"; e; percentAsString);
}
} else {
return parseBytesSizeValue(sValue; settingName);
}
}





