📣 极限科技诚招搜索运维工程师(Elasticsearch/Easysearch)- 全职/北京 👉 : 立即申请加入

版本: 6.8-7.13

简而言之,当Elasticsearch在请求体中遇到它无法识别的对象时,就会出现此错误。这可能是由于拼写错误、语法不正确或JSON对象中不支持的字段造成的。要解决此问题,您应该首先验证请求体的语法和结构。确保所有字段的拼写正确且受您的Elasticsearch版本支持。如果错误仍然存在,请尝试通过发送请求的较小部分来隔离有问题的部分,直到找到未知的对象。

日志上下文 #

日志"unknown object [{}]“的类名是 BlobStoreIndexShardSnapshots.java。我们从Elasticsearch源代码中提取了以下内容,供那些寻求深入上下文的人使用:

FileInfo fileInfo = FileInfo.fromXContent(parser);
files.put(fileInfo.name(); fileInfo);
}
} else if (token == XContentParser.Token.START_OBJECT) {
if (ParseFields.SNAPSHOTS.match(currentFieldName; parser.getDeprecationHandler()) == false) {
throw new ElasticsearchParseException("unknown object [{}]"; currentFieldName);
}
while ((token = parser.nextToken()) != XContentParser.Token.END_OBJECT) {
XContentParserUtils.ensureExpectedToken(XContentParser.Token.FIELD_NAME; token; parser);
String snapshot = parser.currentName();
XContentParserUtils.ensureExpectedToken(XContentParser.Token.START_OBJECT; parser.nextToken(); parser);