reactor-netty: DNS resolution problems since version 1.x
Hello,
I tried to migrate my spring boot application from version 2.3.x to 2.4.2 and I have DNS resolution issues with the WebClient. I have heard that some implementation has changed in DNS resolution from reactor-netty 0.9 to 1.0
Expected Behavior
I expected Webclient http calls working correctly like the previous version of Netty Reactor 0.9.13.
Actual Behavior
Since updating to Spring Boot 2.4.x, the version of Netty changed for 1.x.x, and there are problems of DNS resolution.
Depending of the URL endpoint (endpoint in public Internet or endpoint in the company network), it’s could work or not.
- Windows 10 local machine (with AdoptOpenJdk 11.0.4.11 hotspot) : DNS resolution OK for public internet endpoints / KO for internal company endpoints
- Docker container linux-based (with adoptopenjdk:11.0.7_10-jre-hotspot): DNS resolution KO for public internet endpoints / OK for internal company endpoints
WebClient configuration
HttpClient httpClient =
HttpClient.create(resourceFactory.getConnectionProvider())
.resolver(spec -> spec.trace("somelogger", LogLevel.DEBUG))
.runOn(resourceFactory.getLoopResources())
.option(CONNECT_TIMEOUT_MILLIS, (int) connectionTimeout.toMillis())
.doOnConnected((connection) -> connection.addHandlerLast(new ReadTimeoutHandler(readTimeout.toMillis(), MILLISECONDS)));
On Windows 10 (local machine) - Test KO for an internal company endpoint
2021-01-21 12:01:15.092 DEBUG 9396 --- [ctor-http-nio-4] somelogger : from /x.x.x.x:53 : DefaultDnsQuestion(xxxxxxxx. IN A) failure
io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No matching record type found
at io.netty.resolver.dns.DnsResolveContext.onResponseAorAAAA(..)(Unknown Source)
2021-01-21 12:01:15.093 DEBUG 9396 --- [ctor-http-nio-4] somelogger : from /x.x.x.x:53 : DefaultDnsQuestion(xxxxxxxx. IN AAAA) failure
io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No matching record type found
at io.netty.resolver.dns.DnsResolveContext.onResponseAorAAAA(..)(Unknown Source)
2021-01-21 12:01:15.117 DEBUG 9396 --- [ctor-http-nio-4] somelogger : from /x.x.x.x:53 : DefaultDnsQuestion(xxxxxxxx. IN AAAA) no answer ServFail(2)
2021-01-21 12:01:15.137 DEBUG 9396 --- [ctor-http-nio-4] somelogger : from /x.x.x.x:53 : DefaultDnsQuestion(xxxxxxxx. IN AAAA) no answer ServFail(2)
2021-01-21 12:01:20.141 DEBUG 9396 --- [ctor-http-nio-4] somelogger : from /x.x.x.x:53 : DefaultDnsQuestion(xxxxxxxx. IN AAAA) failure
io.netty.resolver.dns.DnsNameResolverTimeoutException: [/x.x.x.x:53] query via UDP timed out after 5000 milliseconds (no stack trace available)
2021-01-21 12:01:25.145 DEBUG 9396 --- [ctor-http-nio-4] somelogger : from /x.x.x.x:53 : DefaultDnsQuestion(xxxxxxxx. IN AAAA) failure
io.netty.resolver.dns.DnsNameResolverTimeoutException: [/x.x.x.x:53] query via UDP timed out after 5000 milliseconds (no stack trace available)
2021-01-21 12:01:25.145 DEBUG 9396 --- [ctor-http-nio-4] somelogger : DefaultDnsQuestion(xxxxxxxx. IN AAAA) query never written and failed
io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No name servers returned an answer
at io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(..)(Unknown Source)
2021-01-21 12:01:25.192 ERROR 9396 --- [ctor-http-nio-4] LOGGER_STACK :
2021-01-21 12:01:25.193 ERROR 9396 --- [ctor-http-nio-4] s.o.c.w.iolog.LocalHttpRequestLogger : Error with HTTP request
org.springframework.web.reactive.function.client.WebClientRequestException: failed to resolve 'xxxxxxxx' after 6 queries ; nested exception is java.net.UnknownHostException: failed to resolve 'xxxxxxxx' after 6 queries
at org.springframework.web.reactive.function.client.ExchangeFunctions$DefaultExchangeFunction.lambda$wrapException$9(ExchangeFunctions.java:137)
at reactor.core.publisher.MonoErrorSupplied.subscribe(MonoErrorSupplied.java:70)
at reactor.core.publisher.Mono.subscribe(Mono.java:4046)
at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:103)
at reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:221)
at reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:221)
at reactor.core.publisher.FluxMap$MapSubscriber.onError(FluxMap.java:132)
at reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:221)
at reactor.core.publisher.MonoNext$NextSubscriber.onError(MonoNext.java:93)
at reactor.core.publisher.MonoFlatMapMany$FlatMapManyMain.onError(MonoFlatMapMany.java:204)
at reactor.core.publisher.SerializedSubscriber.onError(SerializedSubscriber.java:124)
at reactor.core.publisher.FluxRetryWhen$RetryWhenMainSubscriber.whenError(FluxRetryWhen.java:224)
at reactor.core.publisher.FluxRetryWhen$RetryWhenOtherSubscriber.onError(FluxRetryWhen.java:273)
at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:413)
at reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onNext(FluxConcatMap.java:250)
at reactor.core.publisher.EmitterProcessor.drain(EmitterProcessor.java:491)
at reactor.core.publisher.EmitterProcessor.tryEmitNext(EmitterProcessor.java:299)
at reactor.core.publisher.SinkManySerialized.tryEmitNext(SinkManySerialized.java:97)
at reactor.core.publisher.InternalManySink.emitNext(InternalManySink.java:27)
at reactor.core.publisher.FluxRetryWhen$RetryWhenMainSubscriber.onError(FluxRetryWhen.java:189)
at reactor.core.publisher.MonoCreate$DefaultMonoSink.error(MonoCreate.java:189)
at reactor.netty.http.client.HttpClientConnect$MonoHttpConnect$ClientTransportSubscriber.onError(HttpClientConnect.java:306)
at reactor.core.publisher.MonoCreate$DefaultMonoSink.error(MonoCreate.java:189)
at reactor.netty.resources.DefaultPooledConnectionProvider$DisposableAcquire.onError(DefaultPooledConnectionProvider.java:166)
at reactor.netty.internal.shaded.reactor.pool.AbstractPool$Borrower.fail(AbstractPool.java:427)
at reactor.netty.internal.shaded.reactor.pool.SimpleDequePool.lambda$drainLoop$5(SimpleDequePool.java:309)
at reactor.core.publisher.FluxDoOnEach$DoOnEachSubscriber.onError(FluxDoOnEach.java:186)
at reactor.core.publisher.MonoCreate$DefaultMonoSink.error(MonoCreate.java:189)
at reactor.netty.resources.DefaultPooledConnectionProvider$PooledConnectionAllocator$PooledConnectionInitializer.onError(DefaultPooledConnectionProvider.java:565)
at reactor.core.publisher.MonoFlatMap$FlatMapMain.secondError(MonoFlatMap.java:192)
at reactor.core.publisher.MonoFlatMap$FlatMapInner.onError(MonoFlatMap.java:259)
at reactor.netty.transport.TransportConnector$MonoChannelPromise.tryFailure(TransportConnector.java:464)
at reactor.netty.transport.TransportConnector.lambda$doResolveAndConnect$6(TransportConnector.java:271)
at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:578)
at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:571)
at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:550)
at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:491)
at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:616)
at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:609)
at io.netty.util.concurrent.DefaultPromise.setFailure(DefaultPromise.java:109)
at io.netty.resolver.InetSocketAddressResolver$1.operationComplete(InetSocketAddressResolver.java:62)
at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:578)
at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:571)
at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:550)
at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:491)
at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:616)
at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:609)
at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:117)
at io.netty.resolver.dns.DnsNameResolver.tryFailure(DnsNameResolver.java:936)
at io.netty.resolver.dns.DnsNameResolver.access$500(DnsNameResolver.java:90)
at io.netty.resolver.dns.DnsNameResolver$5.operationComplete(DnsNameResolver.java:956)
at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:578)
at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:552)
at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:491)
at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:616)
at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:609)
at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:117)
at io.netty.resolver.dns.DnsResolveContext.finishResolve(DnsResolveContext.java:1021)
at io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(DnsResolveContext.java:966)
at io.netty.resolver.dns.DnsResolveContext.query(DnsResolveContext.java:414)
at io.netty.resolver.dns.DnsResolveContext.access$600(DnsResolveContext.java:63)
at io.netty.resolver.dns.DnsResolveContext$2.operationComplete(DnsResolveContext.java:463)
at io.netty.util.concurrent.DefaultPromise.notifyListener0(DefaultPromise.java:578)
at io.netty.util.concurrent.DefaultPromise.notifyListeners0(DefaultPromise.java:571)
at io.netty.util.concurrent.DefaultPromise.notifyListenersNow(DefaultPromise.java:550)
at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:491)
at io.netty.util.concurrent.DefaultPromise.setValue0(DefaultPromise.java:616)
at io.netty.util.concurrent.DefaultPromise.setFailure0(DefaultPromise.java:609)
at io.netty.util.concurrent.DefaultPromise.tryFailure(DefaultPromise.java:117)
at io.netty.resolver.dns.DnsQueryContext.tryFailure(DnsQueryContext.java:225)
at io.netty.resolver.dns.DnsQueryContext$4.run(DnsQueryContext.java:177)
at io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98)
at io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:170)
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:164)
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:472)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:500)
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:989)
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.net.UnknownHostException: failed to resolve 'xxxxxxxx' after 6 queries
at io.netty.resolver.dns.DnsResolveContext.finishResolve(DnsResolveContext.java:1013)
... 22 common frames omitted
Caused by: io.netty.resolver.dns.DnsNameResolverTimeoutException: [/x.x.x.x:53] query via UDP timed out after 5000 milliseconds (no stack trace available)
2021-01-21 12:01:25.199 WARN 9396 --- [ctor-http-nio-4] s.o.c.webclient.iolog.WiretapConnector : No match for Log-Request-Id=[4ca57941]
2021-01-21 12:01:25.199 DEBUG 9396 --- [ctor-http-nio-4] somelogger : DefaultDnsQuestion(xxxxxxxx. IN AAAA) query never written and failed
io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No name servers returned an answer
at io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(..)(Unknown Source)
On Docker container using adoptopenjdk:11.0.7_10-jre-hotspot - TEST KO for public Internet endpoint
{"@timestamp":"2021-01-21T14:16:14.922+01:00","@version":"1","message":"from /x.x.x.x:53 : DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.vsp.svc.cluster.local. IN A) failure","log
ger_name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No answe
r found and NXDOMAIN response code returned\n\tat io.netty.resolver.dns.DnsResolveContext.onResponse(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:14.922+01:00","@version":"1","message":"DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.vsp.svc.cluster.local. IN A) query never written and failed","lo
gger_name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No name
servers returned an answer\n\tat io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.013+01:00","@version":"1","message":"from /x.x.x.x:53 : DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.vsp.svc.cluster.local. IN CNAME) failure",
"logger_name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No a
nswer found and NXDOMAIN response code returned\n\tat io.netty.resolver.dns.DnsResolveContext.onResponse(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.013+01:00","@version":"1","message":"DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.vsp.svc.cluster.local. IN CNAME) query never written and failed"
,"logger_name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No
name servers returned an answer\n\tat io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.014+01:00","@version":"1","message":"from /x.x.x.x:53 : DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.svc.cluster.local. IN A) failure","logger_
name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No answer fo
und and NXDOMAIN response code returned\n\tat io.netty.resolver.dns.DnsResolveContext.onResponse(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.014+01:00","@version":"1","message":"DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.svc.cluster.local. IN A) query never written and failed","logger
_name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No name ser
vers returned an answer\n\tat io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.015+01:00","@version":"1","message":"from /x.x.x.x:53 : DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.svc.cluster.local. IN CNAME) failure","log
ger_name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No answe
r found and NXDOMAIN response code returned\n\tat io.netty.resolver.dns.DnsResolveContext.onResponse(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.015+01:00","@version":"1","message":"DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.svc.cluster.local. IN CNAME) query never written and failed","lo
gger_name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No name
servers returned an answer\n\tat io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.015+01:00","@version":"1","message":"from /x.x.x.x:53 : DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.cluster.local. IN A) failure","logger_name
":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No answer found
and NXDOMAIN response code returned\n\tat io.netty.resolver.dns.DnsResolveContext.onResponse(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.015+01:00","@version":"1","message":"DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.cluster.local. IN A) query never written and failed","logger_nam
e":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No name servers
returned an answer\n\tat io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.016+01:00","@version":"1","message":"from /x.x.x.x:53 : DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.cluster.local. IN CNAME) failure","logger_
name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No answer fo
und and NXDOMAIN response code returned\n\tat io.netty.resolver.dns.DnsResolveContext.onResponse(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.016+01:00","@version":"1","message":"DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.cluster.local. IN CNAME) query never written and failed","logger
_name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No name ser
vers returned an answer\n\tat io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.017+01:00","@version":"1","message":"from /x.x.x.x:53 : DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.socrate.vsct.fr. IN A) failure","logger_na
me":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No answer foun
d and NXDOMAIN response code returned\n\tat io.netty.resolver.dns.DnsResolveContext.onResponse(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.017+01:00","@version":"1","message":"DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.socrate.vsct.fr. IN A) query never written and failed","logger_n
ame":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No name serve
rs returned an answer\n\tat io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.017+01:00","@version":"1","message":"from /x.x.x.x:53 : DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.socrate.vsct.fr. IN CNAME) failure","logge
r_name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No answer
found and NXDOMAIN response code returned\n\tat io.netty.resolver.dns.DnsResolveContext.onResponse(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.018+01:00","@version":"1","message":"DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.socrate.vsct.fr. IN CNAME) query never written and failed","logg
er_name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No name s
ervers returned an answer\n\tat io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.018+01:00","@version":"1","message":"DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com.socrate.vsct.fr. IN CNAME) query never written and failed","logg
er_name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No name s
ervers returned an answer\n\tat io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.019+01:00","@version":"1","message":"from /x.x.x.x:53 : DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com. IN A) no answer ServFail(2)","logger_name
":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000}
{"@timestamp":"2021-01-21T14:16:15.019+01:00","@version":"1","message":"from /x.x.x.x:53 : DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com. IN A) failure","logger_name":"somelogger"
,"thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No name servers returned an an
swer\n\tat io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.020+01:00","@version":"1","message":"from /x.x.x.x:53 : DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com. IN CNAME) no answer ServFail(2)","logger_
name":"somelogger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000}
{"@timestamp":"2021-01-21T14:16:15.020+01:00","@version":"1","message":"from /x.x.x.x:53 : DefaultDnsQuestion(api.ouibus-acc.cloud.sqills.com. IN CNAME) failure","logger_name":"somelog
ger","thread_name":"reactor-http-epoll-2","level":"DEBUG","level_value":10000,"stack_trace":"io.netty.resolver.dns.DnsResolveContext$DnsResolveContextException: No name servers returned a
n answer\n\tat io.netty.resolver.dns.DnsResolveContext.tryToFinishResolve(..)(Unknown Source)\n"}
{"@timestamp":"2021-01-21T14:16:15.113+01:00","@version":"1","message":"","logger_name":"LOGGER_STACK","thread_name":"reactor-http-epoll-2","level":"ERROR","level_value":40000,"avro":{"ti
mestamp8601": "2021-01-21T14:16:15.113+0100", "correlationId": "", "requestId": "", "version": "1.148.0-SNAPSHOT", "instance": "cart-services-cart-2895-default-dns", "logMessage": "Error
with HTTP request", "exceptionToString": "org.springframework.web.reactive.function.client.WebClientRequestException: failed to resolve 'api.ouibus-acc.cloud.sqills.com' after 2 queries ;
nested exception is java.net.UnknownHostException: failed to resolve 'api.ouibus-acc.cloud.sqills.com' after 2 queries", "stack1stLine": "org.springframework.web.reactive.function.client
.ExchangeFunctions$DefaultExchangeFunction.lambda$wrapException$9(ExchangeFunctions.java:137)", "causeException": "java.net.UnknownHostException: failed to resolve 'api.ouibus-acc.cloud.s
qills.com' after 2 queries ", "causeStack1stLine": "io.netty.resolver.dns.DnsResolveContext.finishResolve(DnsResolveContext.java:1013)", "fullStack": "org.springframework.web.reactive.fun
ction.client.WebClientRequestException: failed to resolve 'api.ouibus-acc.cloud.sqills.com' after 2 queries ; nested exception is java.net.UnknownHostException: failed to resolve 'api.oui
bus-acc.cloud.sqills.com' after 2 queries \n\tat org.springframework.web.reactive.function.client.ExchangeFunctions$DefaultExchangeFunction.lambda$wrapException$9(ExchangeFunctions.java:1
37)\n\tat reactor.core.publisher.MonoErrorSupplied.subscribe(MonoErrorSupplied.java:70)\n\tat reactor.core.publisher.Mono.subscribe(Mono.java:4046)\n\tat reactor.core.publisher.FluxOnErro
rResume$ResumeSubscriber.onError(FluxOnErrorResume.java:103)\n\tat reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:221)\n\tat reactor.core.publisher.FluxPeek$PeekSubs
criber.onError(FluxPeek.java:221)\n\tat reactor.core.publisher.FluxMap$MapSubscriber.onError(FluxMap.java:132)\n\tat reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:2
21)\n\tat reactor.core.publisher.MonoNext$NextSubscriber.onError(MonoNext.java:93)\n\tat reactor.core.publisher.MonoFlatMapMany$FlatMapManyMain.onError(MonoFlatMapMany.java:204)\n\tat rea
ctor.core.publisher.SerializedSubscriber.onError(SerializedSubscriber.java:124)\n\tat reactor.core.publisher.FluxRetryWhen$RetryWhenMainSubscriber.whenError(FluxRetryWhen.java:224)\n\tat
reactor.core.publisher.FluxRetryWhen$RetryWhenOtherSubscriber.onError(FluxRetryWhen.java:273)\n\tat reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:413)\n
\tat reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onNext(FluxConcatMap.java:250)\n\tat reactor.core.publisher.EmitterProcessor.drain(EmitterProcessor.java:491)\n\tat reactor.co
re.publisher.EmitterProcessor.tryEmitNext(EmitterProcessor.java:299)\n\tat reactor.core.publisher.SinkManySerialized.tryEmitNext(SinkManySerialized.java:97)\n\tat reactor.core.publisher.I
nternalManySink.emitNext(InternalManySink.java:27)\n\tat reactor.core.publisher.FluxRetryWhen$RetryWhenMainSubscriber.onError(FluxRetryWhen.java:189)\n\tat reactor.core.publisher.MonoCrea
te$DefaultMonoSink.error(Mon
Thank you for the help.
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Reactions: 2
- Comments: 65 (31 by maintainers)
@broadside74 I created an issue for Netty project - https://github.com/netty/netty/issues/11142
It seems this code did the trick
Lets see if I have the timeout problem, i’ll come back to you
I spent hours trying to understand this issue…
I tried this approach and it worked for me!!!
Thank you very much!!!
@violetagg I can certainly try. It will take some time to set up but I will try to get that done this afternoon.
Thank you @violetagg for your help. I understand better why you propose me to try with JDK 15… I was not able to try already, but it’s on my short todo list.