Module org.elasticsearch.server
Class HierarchyCircuitBreakerService
java.lang.Object
org.elasticsearch.common.component.AbstractLifecycleComponent
org.elasticsearch.indices.breaker.CircuitBreakerService
org.elasticsearch.indices.breaker.HierarchyCircuitBreakerService
- All Implemented Interfaces:
Closeable
,AutoCloseable
,LifecycleComponent
,Releasable
CircuitBreakerService that attempts to redistribute space between breakers
if tripped
-
Field Summary
Modifier and TypeFieldDescriptionstatic final Setting<ByteSizeValue>
static final Setting<CircuitBreaker.Type>
static final Setting<ByteSizeValue>
static final Setting<CircuitBreaker.Type>
static final Setting<ByteSizeValue>
static final Setting<CircuitBreaker.Type>
static final Setting<ByteSizeValue>
Fields inherited from class org.elasticsearch.common.component.AbstractLifecycleComponent
lifecycle
-
Constructor Summary
ConstructorDescriptionHierarchyCircuitBreakerService
(Settings settings, List<BreakerSettings> customBreakers, ClusterSettings clusterSettings) -
Method Summary
Modifier and TypeMethodDescriptionvoid
checkParentLimit
(long newBytesReserved, String label) Checks whether the parent breaker has been trippedgetBreaker
(String name) org.elasticsearch.indices.breaker.HierarchyCircuitBreakerService.OverLimitStrategy
long
boolean
stats()
void
updateUseRealMemorySetting
(boolean trackRealMemoryUsage) static void
validateSettings
(BreakerSettings[] childrenSettings) Validate that child settings are validMethods inherited from class org.elasticsearch.indices.breaker.CircuitBreakerService
doClose, doStart, doStop
Methods inherited from class org.elasticsearch.common.component.AbstractLifecycleComponent
addLifecycleListener, close, lifecycleState, start, stop
-
Field Details
-
USE_REAL_MEMORY_USAGE_SETTING
-
TOTAL_CIRCUIT_BREAKER_LIMIT_SETTING
-
FIELDDATA_CIRCUIT_BREAKER_LIMIT_SETTING
-
FIELDDATA_CIRCUIT_BREAKER_OVERHEAD_SETTING
-
FIELDDATA_CIRCUIT_BREAKER_TYPE_SETTING
-
REQUEST_CIRCUIT_BREAKER_LIMIT_SETTING
-
REQUEST_CIRCUIT_BREAKER_OVERHEAD_SETTING
-
REQUEST_CIRCUIT_BREAKER_TYPE_SETTING
-
IN_FLIGHT_REQUESTS_CIRCUIT_BREAKER_LIMIT_SETTING
-
IN_FLIGHT_REQUESTS_CIRCUIT_BREAKER_OVERHEAD_SETTING
-
IN_FLIGHT_REQUESTS_CIRCUIT_BREAKER_TYPE_SETTING
-
-
Constructor Details
-
HierarchyCircuitBreakerService
public HierarchyCircuitBreakerService(Settings settings, List<BreakerSettings> customBreakers, ClusterSettings clusterSettings)
-
-
Method Details
-
updateUseRealMemorySetting
public void updateUseRealMemorySetting(boolean trackRealMemoryUsage) -
isTrackRealMemoryUsage
public boolean isTrackRealMemoryUsage() -
getOverLimitStrategy
public org.elasticsearch.indices.breaker.HierarchyCircuitBreakerService.OverLimitStrategy getOverLimitStrategy() -
validateSettings
public static void validateSettings(BreakerSettings[] childrenSettings) throws IllegalStateException Validate that child settings are valid- Throws:
IllegalStateException
-
getBreaker
- Specified by:
getBreaker
in classCircuitBreakerService
- Returns:
- the breaker that can be used to register estimates against
-
stats
- Specified by:
stats
in classCircuitBreakerService
- Returns:
- stats about all breakers
-
stats
- Specified by:
stats
in classCircuitBreakerService
- Returns:
- stats about a specific breaker
-
getParentLimit
public long getParentLimit() -
checkParentLimit
Checks whether the parent breaker has been tripped- Throws:
CircuitBreakingException
-