DBAtlas · Атлас эксплуатации баз данных

document_missing_exception: document_missing_exception: [_doc][id]: документ отсутствует

Elasticsearch

Что это значит?

Обновляемый документ (_update) не найден в индексе. Обновление требует существующего документа; если документа нет, возникает это исключение.

Почему возникает?

Документ был удалён ранее, никогда не создавался, использован неверный _id, запрос ушёл в неверный индекс или к документу, записанному с пользовательской маршрутизацией (routing), обратились без routing. (GET и _update работают в реальном времени; задержка refresh не вызывает эту ошибку.)

Как исправить

Убедитесь, что _id и целевой индекс указаны верно: GET /index-name/_doc/id. Если нужно поведение «обновить, если существует / создать, если отсутствует», используйте upsert (или doc_as_upsert:true) в запросе _update. Создавайте документ напрямую через index (PUT). В приложении перехватывайте это исключение и переходите к логике upsert.

Открыть в DBAtlas →

Ещё по этой СУБД