--- title: "缺失或无效的 written_by 字段 writtenByStr - 如何解决此 Elasticsearch 异常" date: 2026-03-25 lastmod: 2026-03-25 description: "当Elasticsearch无法找到或验证written_by字段时发生的错误及其解决方案" tags: ["异常处理", "字段验证", "快照", "BlobStoreIndexShardSnapshot"] summary: " 版本: 6.8-7.13 简而言之,当 Elasticsearch 无法找到或验证 “written_by” 字段时,会发生此错误。这可能是由于该字段不存在、拼写错误或包含无效数据导致的。要解决此问题,您可以检查正在索引的数据,确保 “written_by” 字段存在且拼写正确。此外,验证 “written_by” 字段中的数据,确保其符合预期的格式或数据类型。如果您使用脚本或自动化进程来索引数据,请确保其配置正确,以包含并正确格式化此字段。 日志上下文 # 日志 “missing or invalid written_by [” + writtenByStr + “]” 的类名是 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 [" + writtenByStr + "]"); } else if (checksum == null) { throw new ElasticsearchParseException("missing checksum for name [" + name + "]"); } return new FileInfo(name; new StoreFileMetadata(physicalName; length; checksum; writtenBy; metaHash); partSize); } " --- > **版本:** 6.8-7.13 简而言之,当 Elasticsearch 无法找到或验证 "written_by" 字段时,会发生此错误。这可能是由于该字段不存在、拼写错误或包含无效数据导致的。要解决此问题,您可以检查正在索引的数据,确保 "written_by" 字段存在且拼写正确。此外,验证 "written_by" 字段中的数据,确保其符合预期的格式或数据类型。如果您使用脚本或自动化进程来索引数据,请确保其配置正确,以包含并正确格式化此字段。 ## 日志上下文 日志 "missing or invalid written\_by [" + writtenByStr + "]" 的类名是 [BlobStoreIndexShardSnapshot.java。](https://www.geeksforgeeks.org/java-lang-class-class-java-set-1/) 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人参考: ```java } 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 [" + writtenByStr + "]"); } else if (checksum == null) { throw new ElasticsearchParseException("missing checksum for name [" + name + "]"); } return new FileInfo(name; new StoreFileMetadata(physicalName; length; checksum; writtenBy; metaHash); partSize); } ```