document_source_missing_exception: Document source is missing
ElasticsearchNe demek?
İşlem, belgenin _source alanına ihtiyaç duyuyor ancak bu alan saklanmıyor. Kaynak (source) devre dışı bırakılmış bir index'te, _source gerektiren bir işlem (ör. kısmi update, source getirme) yapılmaya çalışıldı.
Neden olur?
Index mapping'inde _source: {enabled: false} ayarlanmış olması; bu durumda belgenin orijinal JSON'u saklanmadığından kısmi güncelleme (partial update), reindex ya da _source dönen sorgular çalışamaz. Yer kazanmak için source'u kapatan yapılandırmalar bu soruna yol açar.
Nasıl çözülür?
_source'u gerektiren işlemler için mapping'de kaynağın etkin olması gerekir. Yeni bir index oluştururken _source'u açık bırakın (varsayılan etkindir). Var olan index'te _source kapalıysa, güncelleme yerine belgenin tamamını yeniden indeksleyin (index API ile üzerine yazın). Yer tasarrufu için source'u tamamen kapatmak yerine _source içerik filtreleme (includes/excludes) veya synthetic _source gibi seçenekleri değerlendirin.
Aynı motorda diğer kayıtlar
- settings_exceptionInvalid settings
- shard_not_found_exceptionShard not found
- not_x_content_exceptionCompressor detection error / body is not valid content
- node_not_connected_exceptionNode is not connected
- receive_timeout_transport_exceptionRequest timed out waiting for a response from another node
- routing_missing_exceptionRouting value is required for this document
- too_many_buckets_exceptionTrying to create too many buckets