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

routing_missing_exception: Routing value is required for this document

Elasticsearch

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

Для доступа к документу/его индексирования требуется значение routing, но оно не передано. Без routing Elasticsearch не смог определить, к какому шарду относится документ.

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

В маппинге индекса задано _routing required=true; используется связь parent-join (parent/child), и дочерние документы требуют routing; либо параметр routing пропущен в запросе index/get/update/delete. Типичная причина — чтение документов, записанных с пользовательским routing, без указания routing.

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

Явно укажите значение routing в запросе (например, ?routing=value в вызовах index/get/update/delete). При parent-join передавайте id родителя в качестве routing для дочерних документов. Для чтения/обновления/удаления используйте тот же routing, что и при записи документа. Проверьте требование _routing (required) в маппинге.

Открыть в DBAtlas →

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