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

版本: 6.8-8.9

简而言之,当 Elasticsearch 由于文件长度缺失或无效而无法读取文件时,会出现此错误。这可能是由于文件损坏或传输过程失败导致的。要解决此问题,您可以尝试以下操作:1) 重新上传文件,确保正确传输。2) 检查文件是否损坏,必要时进行修复。3) 验证文件长度是否在 Elasticsearch 可接受的范围内。4) 如果文件是较大索引的一部分,请考虑重新索引。

日志上下文 #

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

if (name == null || Strings.validFileName(name) == false) {
    throw new ElasticsearchParseException("missing or invalid file name [" + name + "]");
} 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 + "]");
}