You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by zh...@apache.org on 2025/12/10 07:06:06 UTC
(flink) branch master updated: [FLINK-38754][runtime] Avoid reverse DNS lookups when connecting to BlobServer
This is an automated email from the ASF dual-hosted git repository.
zhuzh pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git
The following commit(s) were added to refs/heads/master by this push:
new 7ba97419d20 [FLINK-38754][runtime] Avoid reverse DNS lookups when connecting to BlobServer
7ba97419d20 is described below
commit 7ba97419d200adef672b67c52c2b5a79f277cfda
Author: Yi Zhang <zh...@163.com>
AuthorDate: Wed Dec 3 11:40:39 2025 +0800
[FLINK-38754][runtime] Avoid reverse DNS lookups when connecting to BlobServer
---
.../src/main/java/org/apache/flink/runtime/blob/BlobClient.java | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/flink-runtime/src/main/java/org/apache/flink/runtime/blob/BlobClient.java b/flink-runtime/src/main/java/org/apache/flink/runtime/blob/BlobClient.java
index 1b37b407f0d..16127017fa0 100644
--- a/flink-runtime/src/main/java/org/apache/flink/runtime/blob/BlobClient.java
+++ b/flink-runtime/src/main/java/org/apache/flink/runtime/blob/BlobClient.java
@@ -92,10 +92,12 @@ public final class BlobClient implements Closeable {
}
// Establish the socket using the hostname and port. This avoids a potential issue where
- // the
- // InetSocketAddress can cache a failure in hostname resolution forever.
+ // the InetSocketAddress can cache a failure in hostname resolution forever.
+ // Use getHostString() instead of getHostName() to avoid unnecessary reverse DNS and DNS
+ // lookups when addresses are specified as IP literals. This improves reliability and
+ // reduces latency for each blob transfer.
socket.connect(
- new InetSocketAddress(serverAddress.getHostName(), serverAddress.getPort()),
+ new InetSocketAddress(serverAddress.getHostString(), serverAddress.getPort()),
clientConfig.get(BlobServerOptions.CONNECT_TIMEOUT));
socket.setSoTimeout(clientConfig.get(BlobServerOptions.SO_TIMEOUT));
} catch (Exception e) {