DBAtlas · Atlas de operaciones de bases de datos

circuit_breaking_exception: CircuitBreakingException[[parent] Data too large, data for [<...>] would be [...], which is larger than the limit of [...]] (datos demasiado grandes; límite del circuit breaker)

Elasticsearch

¿Qué significa?

Se rechazó una solicitud porque superaría el límite del circuit breaker de memoria (heap). Elasticsearch detiene la solicitud de antemano para evitar que el nodo se caiga con un OutOfMemoryError. El breaker [parent] protege el uso total de memoria; el breaker [fielddata] protege la memoria de fielddata en campos text.

¿Por qué ocurre?

Heap de JVM insuficiente, agregaciones muy grandes/complejas, conjuntos de resultados grandes, solicitudes bulk grandes, fielddata cargado en campos text o muchas consultas pesadas concurrentes que llenan el heap. Suele ser un síntoma de presión sobre el heap.

Cómo solucionarlo

Reduzca las consultas: disminuya el tamaño de las agregaciones, el tamaño de los lotes bulk y los campos devueltos. Agregue sobre el subcampo keyword (.keyword) en lugar de usar fielddata en campos text. Aumente el heap de JVM (~50 % de la RAM del servidor, como máximo ~31GB). Supervise la presión del heap: GET _cat/nodes?v&h=name,heap.percent. Corrija la causa raíz (memoria/consulta) en lugar de elevar temporalmente los límites de los breakers. Compruebe qué breaker saltó con GET _nodes/stats/breaker.

Abrir en DBAtlas →

Más entradas de este motor