Class MetaDataIndexStateService
- java.lang.Object
-
- org.elasticsearch.cluster.metadata.MetaDataIndexStateService
-
public class MetaDataIndexStateService extends java.lang.Object
Service responsible for submitting open/close index requests
-
-
Field Summary
Fields Modifier and Type Field Description static ClusterBlock
INDEX_CLOSED_BLOCK
static int
INDEX_CLOSED_BLOCK_ID
static Setting<java.lang.Boolean>
VERIFIED_BEFORE_CLOSE_SETTING
-
Constructor Summary
Constructors Constructor Description MetaDataIndexStateService(ClusterService clusterService, AllocationService allocationService, MetaDataIndexUpgradeService metaDataIndexUpgradeService, IndicesService indicesService, ThreadPool threadPool, TransportVerifyShardBeforeCloseAction transportVerifyShardBeforeCloseAction)
-
Method Summary
Modifier and Type Method Description void
closeIndices(CloseIndexClusterStateUpdateRequest request, ActionListener<CloseIndexResponse> listener)
Closes one or more indices.static ClusterBlock
createIndexClosingBlock()
static boolean
isIndexVerifiedBeforeClosed(IndexMetaData indexMetaData)
void
openIndex(OpenIndexClusterStateUpdateRequest request, ActionListener<OpenIndexClusterStateUpdateResponse> listener)
-
-
-
Field Detail
-
INDEX_CLOSED_BLOCK_ID
public static final int INDEX_CLOSED_BLOCK_ID
- See Also:
- Constant Field Values
-
INDEX_CLOSED_BLOCK
public static final ClusterBlock INDEX_CLOSED_BLOCK
-
VERIFIED_BEFORE_CLOSE_SETTING
public static final Setting<java.lang.Boolean> VERIFIED_BEFORE_CLOSE_SETTING
-
-
Constructor Detail
-
MetaDataIndexStateService
@Inject public MetaDataIndexStateService(ClusterService clusterService, AllocationService allocationService, MetaDataIndexUpgradeService metaDataIndexUpgradeService, IndicesService indicesService, ThreadPool threadPool, TransportVerifyShardBeforeCloseAction transportVerifyShardBeforeCloseAction)
-
-
Method Detail
-
closeIndices
public void closeIndices(CloseIndexClusterStateUpdateRequest request, ActionListener<CloseIndexResponse> listener)
Closes one or more indices. Closing indices is a 3 steps process: it first adds a write block to every indices to close, then waits for the operations on shards to be terminated and finally closes the indices by moving their state to CLOSE.
-
openIndex
public void openIndex(OpenIndexClusterStateUpdateRequest request, ActionListener<OpenIndexClusterStateUpdateResponse> listener)
-
createIndexClosingBlock
public static ClusterBlock createIndexClosingBlock()
- Returns:
- Generates a
ClusterBlock
that blocks read and write operations on soon-to-be-closed indices. The cluster block is generated with the id value equals toINDEX_CLOSED_BLOCK_ID
and a unique UUID.
-
isIndexVerifiedBeforeClosed
public static boolean isIndexVerifiedBeforeClosed(IndexMetaData indexMetaData)
-
-