Github user fpj commented on a diff in the pull request: https://github.com/apache/zookeeper/pull/451#discussion_r186553004 --- Diff: src/java/main/org/apache/zookeeper/client/StaticHostProvider.java --- @@ -111,9 +154,18 @@ public InetSocketAddress next(long spinDelay) { lastIndex = 0; } - return serverAddresses.get(currentIndex); + InetSocketAddress curAddr = serverAddresses.get(currentIndex); + + String curHostString = getHostString(curAddr); + List<InetAddress> resolvedAddresses = new ArrayList<InetAddress>(Arrays.asList(this.resolver.getAllByName(curHostString))); + if (resolvedAddresses.isEmpty()) { + throw new UnknownHostException("No IP address returned for address: " + curHostString); --- End diff -- Should we try with the next on the list rather than throwing? After all, the call is to get the "next" resolved address. Of course, it is possible that we go through the whole list an find nothing. We might want to throw then so that we don't loop forever.
---