This is an automated email from the ASF dual-hosted git repository.

technoboy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git


The following commit(s) were added to refs/heads/master by this push:
     new dda81afe45f [fix][client]Fix auto cluster failover can't resolve host 
bug (#16152)
dda81afe45f is described below

commit dda81afe45fea2d8dd16eaaa5d1f729e50ac79a4
Author: Hang Chen <[email protected]>
AuthorDate: Wed Jul 27 10:28:37 2022 +0800

    [fix][client]Fix auto cluster failover can't resolve host bug (#16152)
---
 .../main/java/org/apache/pulsar/client/impl/AutoClusterFailover.java  | 4 +++-
 .../java/org/apache/pulsar/client/impl/AutoClusterFailoverTest.java   | 2 ++
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git 
a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/AutoClusterFailover.java
 
b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/AutoClusterFailover.java
index baccc29e7da..1f34de71979 100644
--- 
a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/AutoClusterFailover.java
+++ 
b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/AutoClusterFailover.java
@@ -22,6 +22,7 @@ import static 
org.apache.pulsar.common.util.Runnables.catchingAndLoggingThrowabl
 import com.google.common.base.Strings;
 import io.netty.util.concurrent.DefaultThreadFactory;
 import java.io.IOException;
+import java.net.InetSocketAddress;
 import java.net.Socket;
 import java.util.List;
 import java.util.Map;
@@ -126,8 +127,9 @@ public class AutoClusterFailover implements 
ServiceUrlProvider {
     boolean probeAvailable(String url) {
         try {
             resolver.updateServiceUrl(url);
+            InetSocketAddress endpoint = resolver.resolveHost();
             Socket socket = new Socket();
-            socket.connect(resolver.resolveHost(), TIMEOUT);
+            socket.connect(new InetSocketAddress(endpoint.getHostName(), 
endpoint.getPort()), TIMEOUT);
             socket.close();
             return true;
         } catch (Exception e) {
diff --git 
a/pulsar-client/src/test/java/org/apache/pulsar/client/impl/AutoClusterFailoverTest.java
 
b/pulsar-client/src/test/java/org/apache/pulsar/client/impl/AutoClusterFailoverTest.java
index 5a03b37f594..ad5cdec8f66 100644
--- 
a/pulsar-client/src/test/java/org/apache/pulsar/client/impl/AutoClusterFailoverTest.java
+++ 
b/pulsar-client/src/test/java/org/apache/pulsar/client/impl/AutoClusterFailoverTest.java
@@ -27,6 +27,7 @@ import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.concurrent.TimeUnit;
+import lombok.extern.slf4j.Slf4j;
 import org.apache.pulsar.client.api.Authentication;
 import org.apache.pulsar.client.api.AuthenticationFactory;
 import org.apache.pulsar.client.api.PulsarClientException;
@@ -37,6 +38,7 @@ import org.mockito.Mockito;
 import org.testng.annotations.Test;
 
 @Test(groups = "broker-impl")
+@Slf4j
 public class AutoClusterFailoverTest {
     @Test
     public void testBuildAutoClusterFailoverInstance() throws 
PulsarClientException {

Reply via email to