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

版本: 7.14-8.9

简要来说,当 Elasticsearch 文档中的 “written_by” 字段缺失或包含无效数据时,会发生此错误。这可能是由于数据输入不正确或文档架构中缺少字段导致的。要解决此问题,您可以:1) 检查输入的数据以确保其有效且格式正确。2) 验证 “written_by” 字段是否存在于您的文档架构中。3) 如果该字段是可选的,修改代码以处理可能缺失的情况。4) 如果该字段是必需的,确保所有文档在索引之前都包含此字段。

日志上下文 #

日志 “missing or invalid written_by [” + writtenBy + “]” 的类名是 BlobStoreIndexShardSnapshot.java。 我们从 Elasticsearch 源代码中提取了以下内容,以供那些寻求深入上下文的人参考:

} else if (physicalName == null || Strings.validFileName(physicalName) == false) {
    throw new ElasticsearchParseException("missing or invalid physical file name [" + physicalName + "]");
} else if (length < 0) {
    throw new ElasticsearchParseException("missing or invalid file length");
} else if (writtenBy == null) {
    throw new ElasticsearchParseException("missing or invalid written_by [" + writtenBy + "]");
} else if (checksum == null) {
    throw new ElasticsearchParseException("missing checksum for name [" + name + "]");
}
return new FileInfo(name; new StoreFileMetadata(physicalName; length; checksum; writtenBy; metaHash; writerUuid); partSize);
}