コード例 #1
0
 /**
  * Returns all region servers from given peer
  *
  * @param peerClusterId (byte) the cluster to interrogate
  * @return addresses of all region servers
  */
 public List<HServerAddress> getSlavesAddresses(String peerClusterId) {
   if (this.peerClusters.size() == 0) {
     return new ArrayList<HServerAddress>(0);
   }
   ReplicationPeer peer = this.peerClusters.get(peerClusterId);
   if (peer == null) {
     return new ArrayList<HServerAddress>(0);
   }
   peer.setRegionServers(fetchSlavesAddresses(peer.getZkw()));
   return peer.getRegionServers();
 }
コード例 #2
0
 @Override
 public List<ServerName> getRegionServersOfConnectedPeer(String peerId) {
   if (this.peerClusters.size() == 0) {
     return Collections.emptyList();
   }
   ReplicationPeer peer = this.peerClusters.get(peerId);
   if (peer == null) {
     return Collections.emptyList();
   }
   List<ServerName> addresses;
   try {
     addresses = fetchSlavesAddresses(peer.getZkw());
   } catch (KeeperException ke) {
     if (LOG.isDebugEnabled()) {
       LOG.debug("Fetch salves addresses failed.", ke);
     }
     reconnectPeer(ke, peer);
     addresses = Collections.emptyList();
   }
   peer.setRegionServers(addresses);
   return peer.getRegionServers();
 }