You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by lh...@apache.org on 2024/11/14 17:10:29 UTC
(pulsar) branch branch-3.0 updated: Enabling DNS retryOnTimeout with TCP in DnsNameResolver (#23590)
This is an automated email from the ASF dual-hosted git repository.
lhotari pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/pulsar.git
The following commit(s) were added to refs/heads/branch-3.0 by this push:
new 3173b3f05f2 Enabling DNS retryOnTimeout with TCP in DnsNameResolver (#23590)
3173b3f05f2 is described below
commit 3173b3f05f26c8bd0da86a4e9e980b65959e7588
Author: grayson <91...@qq.com>
AuthorDate: Thu Nov 14 05:07:01 2024 +0800
Enabling DNS retryOnTimeout with TCP in DnsNameResolver (#23590)
(cherry picked from commit 5d924bfb451bccdad0c1dc9a22c6dde49d65a47d)
---
.../src/main/java/org/apache/pulsar/client/impl/ConnectionPool.java | 4 +++-
.../src/main/java/org/apache/pulsar/proxy/server/ProxyService.java | 3 ++-
2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConnectionPool.java b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConnectionPool.java
index fbacd9496c2..2c102b36482 100644
--- a/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConnectionPool.java
+++ b/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConnectionPool.java
@@ -150,7 +150,9 @@ public class ConnectionPool implements AutoCloseable {
private static AddressResolver<InetSocketAddress> createAddressResolver(ClientConfigurationData conf,
EventLoopGroup eventLoopGroup) {
DnsNameResolverBuilder dnsNameResolverBuilder = new DnsNameResolverBuilder()
- .traceEnabled(true).channelType(EventLoopUtil.getDatagramChannelClass(eventLoopGroup));
+ .traceEnabled(true)
+ .channelType(EventLoopUtil.getDatagramChannelClass(eventLoopGroup))
+ .socketChannelType(EventLoopUtil.getClientSocketChannelClass(eventLoopGroup), true);
if (conf.getDnsLookupBindAddress() != null) {
InetSocketAddress addr = new InetSocketAddress(conf.getDnsLookupBindAddress(),
conf.getDnsLookupBindPort());
diff --git a/pulsar-proxy/src/main/java/org/apache/pulsar/proxy/server/ProxyService.java b/pulsar-proxy/src/main/java/org/apache/pulsar/proxy/server/ProxyService.java
index 6ee9f5bcdfd..1acc34f12f4 100644
--- a/pulsar-proxy/src/main/java/org/apache/pulsar/proxy/server/ProxyService.java
+++ b/pulsar-proxy/src/main/java/org/apache/pulsar/proxy/server/ProxyService.java
@@ -172,7 +172,8 @@ public class ProxyService implements Closeable {
this.authenticationService = authenticationService;
DnsNameResolverBuilder dnsNameResolverBuilder = new DnsNameResolverBuilder()
- .channelType(EventLoopUtil.getDatagramChannelClass(workerGroup));
+ .channelType(EventLoopUtil.getDatagramChannelClass(workerGroup))
+ .socketChannelType(EventLoopUtil.getClientSocketChannelClass(workerGroup), true);
DnsResolverUtil.applyJdkDnsCacheSettings(dnsNameResolverBuilder);
dnsAddressResolverGroup = new DnsAddressResolverGroup(dnsNameResolverBuilder);