DBAtlas · Atlas für Datenbankbetrieb

circuit_breaking_exception: CircuitBreakingException[[parent] Data too large, data for [<...>] would be [...], which is larger than the limit of [...]] (Daten zu groß; Circuit-Breaker-Limit überschritten)

Elasticsearch

Was bedeutet das?

Eine Anfrage wurde abgelehnt, weil sie das Limit des Speicher-Circuit-Breakers (Heap) überschreiten würde. Elasticsearch stoppt die Anfrage vorab, damit der Knoten nicht mit einem OutOfMemoryError abstürzt. Der Breaker [parent] überwacht die gesamte Speichernutzung, der Breaker [fielddata] den Fielddata-Speicher auf text-Feldern.

Ursache

Zu wenig JVM-Heap, sehr große/komplexe Aggregationen, große Ergebnismengen, große Bulk-Requests, auf text-Feldern geladene Fielddata oder viele schwere parallele Abfragen, die den Heap füllen. Es ist meist ein Symptom für Heap-Druck.

Lösung

Verkleinere die Abfragen: Reduziere Aggregationsgröße, Bulk-Batchgröße und zurückgegebene Felder. Aggregiere auf dem keyword-Unterfeld (.keyword) statt auf Fielddata von text-Feldern. Erhöhe den JVM-Heap (~50 % des Server-RAM, höchstens ~31GB). Überwache den Heap-Druck: GET _cat/nodes?v&h=name,heap.percent. Behebe die Grundursache (Speicher/Abfrage), statt die Breaker-Limits vorübergehend anzuheben. Prüfe mit GET _nodes/stats/breaker, welcher Breaker ausgelöst hat.

In DBAtlas öffnen →

Weitere Einträge zu dieser Datenbank