Method Summary
All Methods Instance Methods Abstract Methods Default Methods
Modifier and Type
Method
Description
U
createIndex (IndexMetadata indexMetadata,
java.util.List<IndexEventListener > builtInIndexListener,
boolean writeDanglingIndices)
T
createShard (ShardRouting shardRouting,
PeerRecoveryTargetService recoveryTargetService,
PeerRecoveryTargetService.RecoveryListener recoveryListener,
RepositoriesService repositoriesService,
java.util.function.Consumer<IndexShard.ShardFailure > onShardFailure,
java.util.function.Consumer<ShardId > globalCheckpointSyncer,
RetentionLeaseSyncer retentionLeaseSyncer,
DiscoveryNode targetNode,
DiscoveryNode sourceNode)
Creates a shard for the specified shard routing and starts recovery.
void
deleteUnassignedIndex (java.lang.String reason,
IndexMetadata metadata,
ClusterState clusterState)
Deletes an index that is not assigned to this node.
default T
getShardOrNull (ShardId shardId)
Returns shard for the specified id if it exists otherwise returns null
.
U
indexService (Index index)
Returns an IndexService for the specified index if exists otherwise returns null
.
void
processPendingDeletes (Index index,
IndexSettings indexSettings,
org.elasticsearch.common.unit.TimeValue timeValue)
void
removeIndex (Index index,
IndicesClusterStateService.AllocatedIndices.IndexRemovalReason reason,
java.lang.String extraInfo)
Removes the given index from this service and releases all associated resources.
IndexMetadata
verifyIndexIsDeleted (Index index,
ClusterState clusterState)
Verify that the contents on disk for the given index is deleted; if not, delete the contents.
Methods inherited from interface java.lang.Iterable
forEach, iterator, spliterator
Method Details
Parameters:
indexMetadata
- the index metadata to create the index for
builtInIndexListener
- a list of built-in lifecycle IndexEventListener
that should should be used along side with
the per-index listeners
writeDanglingIndices
- whether dangling indices information should be written
Throws:
ResourceAlreadyExistsException
- if the index already exists.
java.io.IOException
Verify that the contents on disk for the given index is deleted; if not, delete the contents.
This method assumes that an index is already deleted in the cluster state and/or explicitly
through index tombstones.
Parameters:
index
- Index
to make sure its deleted from disk
clusterState
- ClusterState
to ensure the index is not part of it
Returns:
IndexMetadata for the index loaded from disk
Removes the given index from this service and releases all associated resources. Persistent parts of the index
like the shards files, state and transaction logs are kept around in the case of a disaster recovery.
Parameters:
index
- the index to remove
reason
- the reason to remove the index
extraInfo
- extra information that will be used for logging and reporting
@Nullable
U indexService (
Index index)
Returns an IndexService for the specified index if exists otherwise returns null
.
Creates a shard for the specified shard routing and starts recovery.
Parameters:
shardRouting
- the shard routing
recoveryTargetService
- recovery service for the target
recoveryListener
- a callback when recovery changes state (finishes or fails)
repositoriesService
- service responsible for snapshot/restore
onShardFailure
- a callback when this shard fails
globalCheckpointSyncer
- a callback when this shard syncs the global checkpoint
retentionLeaseSyncer
- a callback when this shard syncs retention leases
targetNode
- the node where this shard will be recovered
sourceNode
- the source node to recover this shard from (it might be null)
Returns:
a new shard
Throws:
java.io.IOException
- if an I/O exception occurs when creating the shard
default T getShardOrNull (
ShardId shardId)
Returns shard for the specified id if it exists otherwise returns null
.