@Override public void removeServers(Set<Address> servers) throws IOException { { if (servers == null || servers.isEmpty()) { throw new ConstraintException("The set of servers to remove cannot be null or empty."); } // Hold a lock on the manager instance while moving servers to prevent // another writer changing our state while we are working. synchronized (rsGroupInfoManager) { //check the set of servers checkForDeadOrOnlineServers(servers); rsGroupInfoManager.removeServers(servers); LOG.info("Remove decommissioned servers " + servers + " from rsgroup done."); } } }
@Override public void removeServers(Set<Address> servers) throws IOException { { if (servers == null || servers.isEmpty()) { throw new ConstraintException("The set of servers to remove cannot be null or empty."); } // Hold a lock on the manager instance while moving servers to prevent // another writer changing our state while we are working. synchronized (rsGroupInfoManager) { //check the set of servers checkForDeadOrOnlineServers(servers); rsGroupInfoManager.removeServers(servers); LOG.info("Remove decommissioned servers " + servers + " from rsgroup done."); } } }
@Override public void removeServers(Set<Address> servers) throws IOException { { if (servers == null || servers.isEmpty()) { throw new ConstraintException("The set of servers to remove cannot be null or empty."); } // Hold a lock on the manager instance while moving servers to prevent // another writer changing our state while we are working. synchronized (rsGroupInfoManager) { if (master.getMasterCoprocessorHost() != null) { master.getMasterCoprocessorHost().preRemoveServers(servers); } //check the set of servers checkForDeadOrOnlineServers(servers); rsGroupInfoManager.removeServers(servers); if (master.getMasterCoprocessorHost() != null) { master.getMasterCoprocessorHost().postRemoveServers(servers); } LOG.info("Remove decommissioned servers " + servers + " from rsgroup done."); } } }