circuit_breaking_exception: CircuitBreakingException[[parent] Data too large, data for [<...>] would be [...], which is larger than the limit of [...]] (données trop volumineuses : limite du circuit breaker dépassée)
ElasticsearchQue signifie cette erreur ?
Une requête a été rejetée, car elle dépasserait la limite mémoire (heap) du circuit breaker. Elasticsearch arrête la requête en amont pour éviter que le nœud ne plante avec une OutOfMemoryError. Le breaker [parent] protège l'utilisation totale de la mémoire ; le breaker [fielddata] protège la mémoire fielddata des champs text.
Cause
Heap JVM insuffisant, agrégations très grandes/complexes, grands jeux de résultats, grosses requêtes bulk, fielddata chargé sur des champs text, ou nombreuses requêtes lourdes simultanées remplissant le heap. C'est généralement un symptôme de pression sur le heap.
Comment la corriger
Allégez les requêtes : réduisez la taille des agrégations, la taille des lots bulk et les champs renvoyés. Agrégez sur le sous-champ keyword (.keyword) plutôt que sur le fielddata des champs text. Augmentez le heap JVM (~50 % de la RAM du serveur, au plus ~31GB). Surveillez la pression sur le heap : GET _cat/nodes?v&h=name,heap.percent. Corrigez la cause racine (mémoire/requête) plutôt que de relever temporairement les limites des breakers. Vérifiez quel breaker s'est déclenché avec GET _nodes/stats/breaker.
Autres entrées pour ce moteur
- cluster_block_exceptionClusterBlockException[blocked by: [TOO_MANY_REQUESTS/12/disk usage exceeded flood-stage watermark, index has read-only-allow-delete block]] (before 7.x: FORBIDDEN/12/index read-only / allow delete (api)) (index bloqué par le flood stage watermark)
- index_read_only_allow_deleteTOO_MANY_REQUESTS/12/disk usage exceeded flood-stage watermark, index has read-only-allow-delete block (legacy: FORBIDDEN/12/index read-only / allow delete (api)) (index en lecture seule après dépassement du flood stage)
- high_disk_watermark_exceededhigh disk watermark [90%] exceeded / flood stage disk watermark [95%] exceeded (seuil disque high / flood stage dépassé)
- mapper_parsing_exceptionmapper_parsing_exception: failed to parse field [...] of type [...] (échec de l'analyse du champ)
- strict_dynamic_mapping_exceptionstrict_dynamic_mapping_exception: mapping set to strict, dynamic introduction of [...] within [...] is not allowed (mapping strict ; nouveau champ non autorisé)
- illegal_argument_exception_fielddataillegal_argument_exception: Fielddata is disabled on text fields by default. Set fielddata=true on [your_field] in order to load fielddata in memory (fielddata désactivé par défaut sur les champs text)
- search_phase_execution_exceptionsearch_phase_execution_exception: all shards failed / Failed to execute phase [query] (échec de la recherche sur tous les shards)