@@ -254,7 +254,6 @@ private void pollConnectFuture() {
254254 private void handleConnectException (Throwable e ) {
255255 ++connectionFailureCount ;
256256 SocketAddress socketAddress = socketAddresses [getCurrentSocketAddressIndex ()];
257- unresolveCurrentSocketAddress (socketAddress );
258257 while (e .getCause () != null ) {
259258 e = e .getCause ();
260259 }
@@ -272,28 +271,16 @@ private void handleConnectException(Throwable e) {
272271 private SocketAddress getNextSocketAddress () {
273272 SocketAddress socketAddress = socketAddresses [nextSocketAddressIndex ];
274273
275- // QFJ-266 Recreate socket address for unresolved addresses
274+ // Recreate socket address to avoid cached address resolution
276275 if (socketAddress instanceof InetSocketAddress ) {
277276 InetSocketAddress inetAddr = (InetSocketAddress ) socketAddress ;
278- if (inetAddr .isUnresolved ()) {
279- socketAddress = new InetSocketAddress (inetAddr .getHostName (), inetAddr
280- .getPort ());
281- socketAddresses [nextSocketAddressIndex ] = socketAddress ;
282- }
277+ socketAddress = new InetSocketAddress (inetAddr .getHostName (), inetAddr .getPort ());
278+ socketAddresses [nextSocketAddressIndex ] = socketAddress ;
283279 }
284280 nextSocketAddressIndex = (nextSocketAddressIndex + 1 ) % socketAddresses .length ;
285281 return socketAddress ;
286282 }
287283
288- // QFJ-822 Reset cached DNS resolution information on connection failure.
289- private void unresolveCurrentSocketAddress (SocketAddress socketAddress ) {
290- if (socketAddress instanceof InetSocketAddress ) {
291- InetSocketAddress inetAddr = (InetSocketAddress ) socketAddress ;
292- socketAddresses [getCurrentSocketAddressIndex ()] = InetSocketAddress .createUnresolved (
293- inetAddr .getHostString (), inetAddr .getPort ());
294- }
295- }
296-
297284 private int getCurrentSocketAddressIndex () {
298285 return (nextSocketAddressIndex + socketAddresses .length - 1 ) % socketAddresses .length ;
299286 }
0 commit comments