DBAtlas · 数据库运维图谱

document_missing_exception: document_missing_exception: [_doc][id]: document missing(文档不存在)

Elasticsearch

含义

在索引中找不到要更新(_update)的文档。更新要求文档已存在;如果文档不存在,就会出现该异常。

原因

文档之前已被删除、从未创建、使用了错误的 _id、请求发到了错误的索引,或以自定义 routing 写入的文档在访问时未指定 routing。(GET 和 _update 是实时的;refresh 延迟不会导致该错误。)

解决方法

确认 _id 和目标索引正确:GET /index-name/_doc/id。如果需要存在则更新/不存在则创建的行为,在 _update 请求中使用 upsert(或 doc_as_upsert:true)。直接用 index(PUT)创建文档。在应用中捕获该异常并回退到 upsert 逻辑。

在 DBAtlas 中打开 →

同一数据库的其他条目