本文整理汇总了Java中org.elasticsearch.cluster.ClusterChangedEvent.nodesRemoved方法的典型用法代码示例。如果您正苦于以下问题:Java ClusterChangedEvent.nodesRemoved方法的具体用法?Java ClusterChangedEvent.nodesRemoved怎么用?Java ClusterChangedEvent.nodesRemoved使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.elasticsearch.cluster.ClusterChangedEvent
的用法示例。
在下文中一共展示了ClusterChangedEvent.nodesRemoved方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: applyClusterState
import org.elasticsearch.cluster.ClusterChangedEvent; //导入方法依赖的package包/类
@Override
public void applyClusterState(ClusterChangedEvent event) {
try {
if (event.localNodeMaster()) {
if (event.nodesRemoved()) {
processSnapshotsOnRemovedNodes(event);
}
if (event.routingTableChanged()) {
processStartedShards(event);
}
finalizeSnapshotDeletionFromPreviousMaster(event);
}
} catch (Exception e) {
logger.warn("Failed to update snapshot state ", e);
}
}
示例2: applyClusterState
import org.elasticsearch.cluster.ClusterChangedEvent; //导入方法依赖的package包/类
@Override
public void applyClusterState(ClusterChangedEvent event) {
lastDiscoveryNodes = event.state().getNodes();
if (event.nodesRemoved()) {
synchronized (banedParents) {
lastDiscoveryNodes = event.state().getNodes();
// Remove all bans that were registered by nodes that are no longer in the cluster state
Iterator<TaskId> banIterator = banedParents.keySet().iterator();
while (banIterator.hasNext()) {
TaskId taskId = banIterator.next();
if (lastDiscoveryNodes.nodeExists(taskId.getNodeId()) == false) {
logger.debug("Removing ban for the parent [{}] on the node [{}], reason: the parent node is gone", taskId,
event.state().getNodes().getLocalNode());
banIterator.remove();
}
}
}
// Cancel cancellable tasks for the nodes that are gone
for (Map.Entry<Long, CancellableTaskHolder> taskEntry : cancellableTasks.entrySet()) {
CancellableTaskHolder holder = taskEntry.getValue();
CancellableTask task = holder.getTask();
TaskId parentTaskId = task.getParentTaskId();
if (parentTaskId.isSet() && lastDiscoveryNodes.nodeExists(parentTaskId.getNodeId()) == false) {
if (task.cancelOnParentLeaving()) {
holder.cancel("Coordinating node [" + parentTaskId.getNodeId() + "] left the cluster");
}
}
}
}
}
示例3: clusterChanged
import org.elasticsearch.cluster.ClusterChangedEvent; //导入方法依赖的package包/类
@Override
public void clusterChanged(ClusterChangedEvent event) {
if (event.routingTableChanged()) {
coordinatorsByShardId.clear();
}
if (event.nodesRemoved()) {
// remove retrycoordinators of removed nodes
synchronized (coordinatorsByNodeId) {
for (DiscoveryNode node : event.nodesDelta().removedNodes()) {
coordinatorsByNodeId.remove(node.id());
}
}
}
}
示例4: removeRemovedNodes
import org.elasticsearch.cluster.ClusterChangedEvent; //导入方法依赖的package包/类
private void removeRemovedNodes(ClusterChangedEvent event) {
if (!event.localNodeMaster() || !event.nodesRemoved()) {
return;
}
Set<String> removedDecommissionedNodes = getRemovedDecommissionedNodes(
event.nodesDelta(), event.state().metaData().transientSettings());
if (removedDecommissionedNodes != null) {
updateSettingsAction.execute(new ClusterUpdateSettingsRequest().transientSettingsToRemove(removedDecommissionedNodes));
}
}
示例5: clusterChanged
import org.elasticsearch.cluster.ClusterChangedEvent; //导入方法依赖的package包/类
@Override
public void clusterChanged(ClusterChangedEvent event) {
if (event.nodesRemoved()) {
synchronized (banedParents) {
lastDiscoveryNodes = event.state().getNodes();
// Remove all bans that were registered by nodes that are no longer in the cluster state
Iterator<TaskId> banIterator = banedParents.keySet().iterator();
while (banIterator.hasNext()) {
TaskId taskId = banIterator.next();
if (lastDiscoveryNodes.nodeExists(taskId.getNodeId()) == false) {
logger.debug("Removing ban for the parent [{}] on the node [{}], reason: the parent node is gone", taskId,
event.state().getNodes().localNode());
banIterator.remove();
}
}
}
// Cancel cancellable tasks for the nodes that are gone
for (Map.Entry<Long, CancellableTaskHolder> taskEntry : cancellableTasks.entrySet()) {
CancellableTaskHolder holder = taskEntry.getValue();
CancellableTask task = holder.getTask();
TaskId parentTaskId = task.getParentTaskId();
if (parentTaskId.isSet() && lastDiscoveryNodes.nodeExists(parentTaskId.getNodeId()) == false) {
if (task.cancelOnParentLeaving()) {
holder.cancel("Coordinating node [" + parentTaskId.getNodeId() + "] left the cluster");
}
}
}
}
}
示例6: clusterChanged
import org.elasticsearch.cluster.ClusterChangedEvent; //导入方法依赖的package包/类
@Override
public void clusterChanged(ClusterChangedEvent event) {
try {
if (event.localNodeMaster()) {
if (event.nodesRemoved()) {
processSnapshotsOnRemovedNodes(event);
}
if (event.routingTableChanged()) {
processStartedShards(event);
}
}
} catch (Throwable t) {
logger.warn("Failed to update snapshot state ", t);
}
}