diff --git a/kyuubi-hive-jdbc/src/main/java/org/apache/kyuubi/jdbc/hive/Utils.java b/kyuubi-hive-jdbc/src/main/java/org/apache/kyuubi/jdbc/hive/Utils.java index 307c7c53d..5309cdfc6 100644 --- a/kyuubi-hive-jdbc/src/main/java/org/apache/kyuubi/jdbc/hive/Utils.java +++ b/kyuubi-hive-jdbc/src/main/java/org/apache/kyuubi/jdbc/hive/Utils.java @@ -442,7 +442,13 @@ public class Utils { */ public static String getCanonicalHostName(String hostName) { try { - return InetAddress.getByName(hostName).getCanonicalHostName(); + InetAddress addr = InetAddress.getByName(hostName); + String canonicalHostname = addr.getCanonicalHostName(); + if (canonicalHostname.equals(addr.getHostAddress())) { + return hostName; + } else { + return canonicalHostname; + } } catch (UnknownHostException exception) { LOG.warn("Could not retrieve canonical hostname for " + hostName, exception); return hostName;