org.elasticsearch.cluster.node.DiscoveryNodes.findByAddress()方法的使用及代码示例

x33g5p2x  于2022-01-18 转载在 其他  
字(12.0k)|赞(0)|评价(0)|浏览(93)

本文整理了Java中org.elasticsearch.cluster.node.DiscoveryNodes.findByAddress()方法的一些代码示例,展示了DiscoveryNodes.findByAddress()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。DiscoveryNodes.findByAddress()方法的具体详情如下:
包路径:org.elasticsearch.cluster.node.DiscoveryNodes
类名称:DiscoveryNodes
方法名:findByAddress

DiscoveryNodes.findByAddress介绍

[英]Get a node by its address
[中]通过其地址获取节点

代码示例

代码示例来源:origin: org.elasticsearch/elasticsearch

protected void sendPings(final TimeValue timeout, final PingingRound pingingRound) {
  final ClusterState lastState = contextProvider.clusterState();
  final UnicastPingRequest pingRequest = new UnicastPingRequest(pingingRound.id(), timeout, createPingResponse(lastState));
  List<TransportAddress> temporalAddresses = temporalResponses.stream().map(pingResponse -> {
    assert clusterName.equals(pingResponse.clusterName()) :
      "got a ping request from a different cluster. expected " + clusterName + " got " + pingResponse.clusterName();
    return pingResponse.node().getAddress();
  }).collect(Collectors.toList());
  final Stream<TransportAddress> uniqueAddresses = Stream.concat(pingingRound.getSeedAddresses().stream(),
    temporalAddresses.stream()).distinct();
  // resolve what we can via the latest cluster state
  final Set<DiscoveryNode> nodesToPing = uniqueAddresses
    .map(address -> {
      DiscoveryNode foundNode = lastState.nodes().findByAddress(address);
      if (foundNode != null && transportService.nodeConnected(foundNode)) {
        return foundNode;
      } else {
        return new DiscoveryNode(
          address.toString(),
          address,
          emptyMap(),
          emptySet(),
          Version.CURRENT.minimumCompatibilityVersion());
      }
    }).collect(Collectors.toSet());
  nodesToPing.forEach(node -> sendPingRequestToNode(node, timeout, pingingRound, pingRequest));
}

代码示例来源:origin: org.elasticsearch/elasticsearch

private ClusterState.Builder becomeMasterAndTrimConflictingNodes(ClusterState currentState, List<DiscoveryNode> joiningNodes) {
  assert currentState.nodes().getMasterNodeId() == null : currentState;
  DiscoveryNodes currentNodes = currentState.nodes();
  DiscoveryNodes.Builder nodesBuilder = DiscoveryNodes.builder(currentNodes);
  nodesBuilder.masterNodeId(currentState.nodes().getLocalNodeId());
  for (final DiscoveryNode joiningNode : joiningNodes) {
    final DiscoveryNode nodeWithSameId = nodesBuilder.get(joiningNode.getId());
    if (nodeWithSameId != null && nodeWithSameId.equals(joiningNode) == false) {
      logger.debug("removing existing node [{}], which conflicts with incoming join from [{}]", nodeWithSameId, joiningNode);
      nodesBuilder.remove(nodeWithSameId.getId());
    }
    final DiscoveryNode nodeWithSameAddress = currentNodes.findByAddress(joiningNode.getAddress());
    if (nodeWithSameAddress != null && nodeWithSameAddress.equals(joiningNode) == false) {
      logger.debug("removing existing node [{}], which conflicts with incoming join from [{}]", nodeWithSameAddress,
        joiningNode);
      nodesBuilder.remove(nodeWithSameAddress.getId());
    }
  }
  // now trim any left over dead nodes - either left there when the previous master stepped down
  // or removed by us above
  ClusterState tmpState = ClusterState.builder(currentState).nodes(nodesBuilder).blocks(ClusterBlocks.builder()
    .blocks(currentState.blocks())
    .removeGlobalBlock(DiscoverySettings.NO_MASTER_BLOCK_ID)).build();
  return ClusterState.builder(allocationService.deassociateDeadNodes(tmpState, false,
    "removed dead nodes on election"));
}

代码示例来源:origin: com.strapdata.elasticsearch/elasticsearch

protected void sendPings(final TimeValue timeout, final PingingRound pingingRound) {
  final UnicastPingRequest pingRequest = new UnicastPingRequest();
  pingRequest.id = pingingRound.id();
  pingRequest.timeout = timeout;
  ClusterState lastState = contextProvider.clusterState();
  pingRequest.pingResponse = createPingResponse(lastState);
  Set<DiscoveryNode> nodesFromResponses = temporalResponses.stream().map(pingResponse -> {
    assert clusterName.equals(pingResponse.clusterName()) :
      "got a ping request from a different cluster. expected " + clusterName + " got " + pingResponse.clusterName();
    return pingResponse.node();
  }).collect(Collectors.toSet());
  // dedup by address
  final Map<TransportAddress, DiscoveryNode> uniqueNodesByAddress =
    Stream.concat(pingingRound.getSeedNodes().stream(), nodesFromResponses.stream())
      .collect(Collectors.toMap(DiscoveryNode::getAddress, Function.identity(), (n1, n2) -> n1));
  // resolve what we can via the latest cluster state
  final Set<DiscoveryNode> nodesToPing = uniqueNodesByAddress.values().stream()
    .map(node -> {
      DiscoveryNode foundNode = lastState.nodes().findByAddress(node.getAddress());
      if (foundNode == null) {
        return node;
      } else {
        return foundNode;
      }
    }).collect(Collectors.toSet());
  nodesToPing.forEach(node -> sendPingRequestToNode(node, timeout, pingingRound, pingRequest));
}

代码示例来源:origin: org.apache.servicemix.bundles/org.apache.servicemix.bundles.elasticsearch

protected void sendPings(final TimeValue timeout, final PingingRound pingingRound) {
  final ClusterState lastState = contextProvider.clusterState();
  final UnicastPingRequest pingRequest = new UnicastPingRequest(pingingRound.id(), timeout, createPingResponse(lastState));
  List<TransportAddress> temporalAddresses = temporalResponses.stream().map(pingResponse -> {
    assert clusterName.equals(pingResponse.clusterName()) :
      "got a ping request from a different cluster. expected " + clusterName + " got " + pingResponse.clusterName();
    return pingResponse.node().getAddress();
  }).collect(Collectors.toList());
  final Stream<TransportAddress> uniqueAddresses = Stream.concat(pingingRound.getSeedAddresses().stream(),
    temporalAddresses.stream()).distinct();
  // resolve what we can via the latest cluster state
  final Set<DiscoveryNode> nodesToPing = uniqueAddresses
    .map(address -> {
      DiscoveryNode foundNode = lastState.nodes().findByAddress(address);
      if (foundNode != null && transportService.nodeConnected(foundNode)) {
        return foundNode;
      } else {
        return new DiscoveryNode(
          address.toString(),
          address,
          emptyMap(),
          emptySet(),
          Version.CURRENT.minimumCompatibilityVersion());
      }
    }).collect(Collectors.toSet());
  nodesToPing.forEach(node -> sendPingRequestToNode(node, timeout, pingingRound, pingRequest));
}

代码示例来源:origin: apache/servicemix-bundles

protected void sendPings(final TimeValue timeout, final PingingRound pingingRound) {
  final ClusterState lastState = contextProvider.clusterState();
  final UnicastPingRequest pingRequest = new UnicastPingRequest(pingingRound.id(), timeout, createPingResponse(lastState));
  List<TransportAddress> temporalAddresses = temporalResponses.stream().map(pingResponse -> {
    assert clusterName.equals(pingResponse.clusterName()) :
      "got a ping request from a different cluster. expected " + clusterName + " got " + pingResponse.clusterName();
    return pingResponse.node().getAddress();
  }).collect(Collectors.toList());
  final Stream<TransportAddress> uniqueAddresses = Stream.concat(pingingRound.getSeedAddresses().stream(),
    temporalAddresses.stream()).distinct();
  // resolve what we can via the latest cluster state
  final Set<DiscoveryNode> nodesToPing = uniqueAddresses
    .map(address -> {
      DiscoveryNode foundNode = lastState.nodes().findByAddress(address);
      if (foundNode != null && transportService.nodeConnected(foundNode)) {
        return foundNode;
      } else {
        return new DiscoveryNode(
          address.toString(),
          address,
          emptyMap(),
          emptySet(),
          Version.CURRENT.minimumCompatibilityVersion());
      }
    }).collect(Collectors.toSet());
  nodesToPing.forEach(node -> sendPingRequestToNode(node, timeout, pingingRound, pingRequest));
}

代码示例来源:origin: harbby/presto-connectors

DiscoveryNode nodeToSend = discoNodes.findByAddress(node.address());
if (nodeToSend != null) {
  nodeFoundByAddress = true;

代码示例来源:origin: com.strapdata.elasticsearch/elasticsearch

private ClusterState.Builder becomeMasterAndTrimConflictingNodes(ClusterState currentState, List<DiscoveryNode> joiningNodes) {
  assert currentState.nodes().getMasterNodeId() == null : currentState;
  DiscoveryNodes currentNodes = currentState.nodes();
  DiscoveryNodes.Builder nodesBuilder = DiscoveryNodes.builder(currentNodes);
  nodesBuilder.masterNodeId(currentState.nodes().getLocalNodeId());
  for (final DiscoveryNode joiningNode : joiningNodes) {
    if (joiningNode == FINISH_ELECTION_TASK || joiningNode == BECOME_MASTER_TASK) {
      continue;
    }
    final DiscoveryNode nodeWithSameId = nodesBuilder.get(joiningNode.getId());
    if (nodeWithSameId != null && nodeWithSameId.equals(joiningNode) == false) {
      logger.debug("removing existing node [{}], which conflicts with incoming join from [{}]", nodeWithSameId, joiningNode);
      nodesBuilder.remove(nodeWithSameId.getId());
    }
    final DiscoveryNode nodeWithSameAddress = currentNodes.findByAddress(joiningNode.getAddress());
    if (nodeWithSameAddress != null && nodeWithSameAddress.equals(joiningNode) == false) {
      logger.debug("removing existing node [{}], which conflicts with incoming join from [{}]", nodeWithSameAddress,
        joiningNode);
      nodesBuilder.remove(nodeWithSameAddress.getId());
    }
  }
  // now trim any left over dead nodes - either left there when the previous master stepped down
  // or removed by us above
  ClusterState tmpState = ClusterState.builder(currentState).nodes(nodesBuilder).build();
  return ClusterState.builder(allocationService.deassociateDeadNodes(tmpState, false,
    "removed dead nodes on election"));
}

代码示例来源:origin: apache/servicemix-bundles

private ClusterState.Builder becomeMasterAndTrimConflictingNodes(ClusterState currentState, List<DiscoveryNode> joiningNodes) {
  assert currentState.nodes().getMasterNodeId() == null : currentState;
  DiscoveryNodes currentNodes = currentState.nodes();
  DiscoveryNodes.Builder nodesBuilder = DiscoveryNodes.builder(currentNodes);
  nodesBuilder.masterNodeId(currentState.nodes().getLocalNodeId());
  for (final DiscoveryNode joiningNode : joiningNodes) {
    final DiscoveryNode nodeWithSameId = nodesBuilder.get(joiningNode.getId());
    if (nodeWithSameId != null && nodeWithSameId.equals(joiningNode) == false) {
      logger.debug("removing existing node [{}], which conflicts with incoming join from [{}]", nodeWithSameId, joiningNode);
      nodesBuilder.remove(nodeWithSameId.getId());
    }
    final DiscoveryNode nodeWithSameAddress = currentNodes.findByAddress(joiningNode.getAddress());
    if (nodeWithSameAddress != null && nodeWithSameAddress.equals(joiningNode) == false) {
      logger.debug("removing existing node [{}], which conflicts with incoming join from [{}]", nodeWithSameAddress,
        joiningNode);
      nodesBuilder.remove(nodeWithSameAddress.getId());
    }
  }
  // now trim any left over dead nodes - either left there when the previous master stepped down
  // or removed by us above
  ClusterState tmpState = ClusterState.builder(currentState).nodes(nodesBuilder).blocks(ClusterBlocks.builder()
    .blocks(currentState.blocks())
    .removeGlobalBlock(DiscoverySettings.NO_MASTER_BLOCK_ID)).build();
  return ClusterState.builder(allocationService.deassociateDeadNodes(tmpState, false,
    "removed dead nodes on election"));
}

代码示例来源:origin: org.apache.servicemix.bundles/org.apache.servicemix.bundles.elasticsearch

private ClusterState.Builder becomeMasterAndTrimConflictingNodes(ClusterState currentState, List<DiscoveryNode> joiningNodes) {
  assert currentState.nodes().getMasterNodeId() == null : currentState;
  DiscoveryNodes currentNodes = currentState.nodes();
  DiscoveryNodes.Builder nodesBuilder = DiscoveryNodes.builder(currentNodes);
  nodesBuilder.masterNodeId(currentState.nodes().getLocalNodeId());
  for (final DiscoveryNode joiningNode : joiningNodes) {
    final DiscoveryNode nodeWithSameId = nodesBuilder.get(joiningNode.getId());
    if (nodeWithSameId != null && nodeWithSameId.equals(joiningNode) == false) {
      logger.debug("removing existing node [{}], which conflicts with incoming join from [{}]", nodeWithSameId, joiningNode);
      nodesBuilder.remove(nodeWithSameId.getId());
    }
    final DiscoveryNode nodeWithSameAddress = currentNodes.findByAddress(joiningNode.getAddress());
    if (nodeWithSameAddress != null && nodeWithSameAddress.equals(joiningNode) == false) {
      logger.debug("removing existing node [{}], which conflicts with incoming join from [{}]", nodeWithSameAddress,
        joiningNode);
      nodesBuilder.remove(nodeWithSameAddress.getId());
    }
  }
  // now trim any left over dead nodes - either left there when the previous master stepped down
  // or removed by us above
  ClusterState tmpState = ClusterState.builder(currentState).nodes(nodesBuilder).blocks(ClusterBlocks.builder()
    .blocks(currentState.blocks())
    .removeGlobalBlock(DiscoverySettings.NO_MASTER_BLOCK_ID)).build();
  return ClusterState.builder(allocationService.deassociateDeadNodes(tmpState, false,
    "removed dead nodes on election"));
}

相关文章

微信公众号

最新文章

更多