Module org.elasticsearch.server
Class TransportIndicesSegmentsAction
java.lang.Object
org.elasticsearch.action.support.TransportAction<IndicesSegmentsRequest,IndicesSegmentResponse>
org.elasticsearch.action.support.HandledTransportAction<IndicesSegmentsRequest,IndicesSegmentResponse>
org.elasticsearch.action.support.broadcast.node.TransportBroadcastByNodeAction<IndicesSegmentsRequest,IndicesSegmentResponse,ShardSegments>
org.elasticsearch.action.admin.indices.segments.TransportIndicesSegmentsAction
public class TransportIndicesSegmentsAction
extends TransportBroadcastByNodeAction<IndicesSegmentsRequest,IndicesSegmentResponse,ShardSegments>
-
Nested Class Summary
Nested classes/interfaces inherited from class org.elasticsearch.action.support.broadcast.node.TransportBroadcastByNodeAction
TransportBroadcastByNodeAction.EmptyResult, TransportBroadcastByNodeAction.NodeResponse, TransportBroadcastByNodeAction.ResponseFactory<Response,ShardOperationResult> -
Field Summary
Fields inherited from class org.elasticsearch.action.support.broadcast.node.TransportBroadcastByNodeAction
clusterService, indexNameExpressionResolver, transportServiceFields inherited from class org.elasticsearch.action.support.TransportAction
actionName, taskManager -
Constructor Summary
ConstructorsConstructorDescriptionTransportIndicesSegmentsAction(ClusterService clusterService, TransportService transportService, IndicesService indicesService, ActionFilters actionFilters, IndexNameExpressionResolver indexNameExpressionResolver) -
Method Summary
Modifier and TypeMethodDescriptionprotected ClusterBlockExceptioncheckGlobalBlock(ClusterState state, IndicesSegmentsRequest request) Executes a global block check before polling the cluster state.protected ClusterBlockExceptioncheckRequestBlock(ClusterState state, IndicesSegmentsRequest countRequest, String[] concreteIndices) Executes a global request-level check before polling the cluster state.getResponseFactory(IndicesSegmentsRequest request, ClusterState clusterState) Create a response factory based on the requst and the cluster state captured at the time the request was handled.protected IndicesSegmentsRequestDeserialize a request from an input streamprotected ShardSegmentsDeserialize a shard-level result from an input streamprotected voidshardOperation(IndicesSegmentsRequest request, ShardRouting shardRouting, Task task, ActionListener<ShardSegments> listener) Executes the shard-level operation.protected ShardsIteratorshards(ClusterState clusterState, IndicesSegmentsRequest request, String[] concreteIndices) Segments goes across *all* active shards.Methods inherited from class org.elasticsearch.action.support.broadcast.node.TransportBroadcastByNodeAction
doExecute, resolveConcreteIndexNamesMethods inherited from class org.elasticsearch.action.support.TransportAction
execute, executeDirect, localOnly
-
Constructor Details
-
TransportIndicesSegmentsAction
@Inject public TransportIndicesSegmentsAction(ClusterService clusterService, TransportService transportService, IndicesService indicesService, ActionFilters actionFilters, IndexNameExpressionResolver indexNameExpressionResolver)
-
-
Method Details
-
shards
protected ShardsIterator shards(ClusterState clusterState, IndicesSegmentsRequest request, String[] concreteIndices) Segments goes across *all* active shards.- Specified by:
shardsin classTransportBroadcastByNodeAction<IndicesSegmentsRequest,IndicesSegmentResponse, ShardSegments> - Parameters:
clusterState- the cluster staterequest- the underlying requestconcreteIndices- the concrete indices on which to execute the operation- Returns:
- the shards on which to execute the operation
-
checkGlobalBlock
protected ClusterBlockException checkGlobalBlock(ClusterState state, IndicesSegmentsRequest request) Description copied from class:TransportBroadcastByNodeActionExecutes a global block check before polling the cluster state.- Specified by:
checkGlobalBlockin classTransportBroadcastByNodeAction<IndicesSegmentsRequest,IndicesSegmentResponse, ShardSegments> - Parameters:
state- the cluster staterequest- the underlying request- Returns:
- a non-null exception if the operation is blocked
-
checkRequestBlock
protected ClusterBlockException checkRequestBlock(ClusterState state, IndicesSegmentsRequest countRequest, String[] concreteIndices) Description copied from class:TransportBroadcastByNodeActionExecutes a global request-level check before polling the cluster state.- Specified by:
checkRequestBlockin classTransportBroadcastByNodeAction<IndicesSegmentsRequest,IndicesSegmentResponse, ShardSegments> - Parameters:
state- the cluster statecountRequest- the underlying requestconcreteIndices- the concrete indices on which to execute the operation- Returns:
- a non-null exception if the operation if blocked
-
readShardResult
Description copied from class:TransportBroadcastByNodeActionDeserialize a shard-level result from an input stream- Specified by:
readShardResultin classTransportBroadcastByNodeAction<IndicesSegmentsRequest,IndicesSegmentResponse, ShardSegments> - Parameters:
in- input stream- Returns:
- a deserialized shard-level result
- Throws:
IOException
-
getResponseFactory
protected TransportBroadcastByNodeAction.ResponseFactory<IndicesSegmentResponse,ShardSegments> getResponseFactory(IndicesSegmentsRequest request, ClusterState clusterState) Description copied from class:TransportBroadcastByNodeActionCreate a response factory based on the requst and the cluster state captured at the time the request was handled. Implementations must avoid capturing the full cluster state if possible.- Specified by:
getResponseFactoryin classTransportBroadcastByNodeAction<IndicesSegmentsRequest,IndicesSegmentResponse, ShardSegments>
-
readRequestFrom
Description copied from class:TransportBroadcastByNodeActionDeserialize a request from an input stream- Specified by:
readRequestFromin classTransportBroadcastByNodeAction<IndicesSegmentsRequest,IndicesSegmentResponse, ShardSegments> - Parameters:
in- input stream- Returns:
- a de-serialized request
- Throws:
IOException
-
shardOperation
protected void shardOperation(IndicesSegmentsRequest request, ShardRouting shardRouting, Task task, ActionListener<ShardSegments> listener) Description copied from class:TransportBroadcastByNodeActionExecutes the shard-level operation. This method is called once per shard serially on the receiving node. This method should not throw an exception, but pass the exception to the listener instead.- Specified by:
shardOperationin classTransportBroadcastByNodeAction<IndicesSegmentsRequest,IndicesSegmentResponse, ShardSegments> - Parameters:
request- the node-level requestshardRouting- the shard on which to execute the operationtask- the task for this node-level requestlistener- the listener to notify with the result of the shard-level operation
-