Solved

SSO Login - 500 error 2x times

  • 20 June 2022
  • 6 replies
  • 382 views

Hi Gooddata,

We’re using Gooddata.CN v1.7.2.

We integrated with Auth0 SSO and everything would be good but most of the cases if you’re not logged in or the session expires and login again in our IDP then go to gooddata url then we get 500 error with a changed long url after the root domain. After if we rewrite the url to the root domain 2x times then the 3rd time login will be success (seamlessly the workspace list appears) and everything looks good.

Do you have any idea what can cause this issue? Assuming its on the Gooddata side but haven’t found exact error, where we should find it (and we can send over to you as well)?

Thanks

Zoltan

 

 

icon

Best answer by Joseph Heun 27 June 2022, 19:12

View original

6 replies

Userlevel 3

Hi Zoltan,

Can you please confirm that you have followed all steps as mentioned here: 

 

https://www.gooddata.com/developers/cloud-native/doc/1.1/administration/auth/external-oidc/

 

Please note the mentioned Limitations for Auth0

Hi Joseph,

Yes, we used this doc exactly and followed the steps (double-checked in Oauth settings).

As I’ve mentioned the SSO works but there is some maybe redirect or token mismatch during the first handshake sometimes which can cause the 500 error. Where should we find the root cause?

Thanks

Zoltan

"msg": "[48b21a35-339979] 500 Server Error for HTTP GET \"/login/oauth2/code/gooddata-domain?code=b_BdgRSvRk8_GDB7T6ZJSIqpJ4f_3H599mb-dJ0ZiuUoi&state=odwMs26ziiRkuHOQXybZDdIaa_I4YJE_oijnHeVS0PU%3D\"",
"exc": "org.springframework.web.reactive.function.client.WebClientRequestException: readAddress(..) failed: Connection reset by peer; nested exception is io.netty.channel.unix.Errors$NativeIoException: readAddress(..) failed: Connection reset by peer\n\tat org.springframework.web.reactive.function.client.ExchangeFunctions$DefaultExchangeFunction.lambda$wrapException$9(ExchangeFunctions.java:141)\n\tSuppressed: The stacktrace has been enhanced by Reactor, refer to additional information below: \nError has been observed at the following site(s):\n\t*__checkpoint ⇢ Request to POST https://login-domain/oauth/token [DefaultWebClient]\n\t*__checkpoint ⇢ org.springframework.security.oauth2.client.web.server.authentication.OAuth2LoginAuthenticationWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.security.oauth2.client.web.server.OAuth2AuthorizationRequestRedirectWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.security.oauth2.client.web.server.OAuth2AuthorizationRequestRedirectWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.security.web.server.context.ReactorContextWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.web.cors.reactive.CorsWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.security.web.server.header.HttpHeaderWriterWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.security.config.web.server.ServerHttpSecurity$ServerWebExchangeReactorContextWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.security.web.server.WebFilterChainProxy [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.cloud.sleuth.instrument.web.TraceWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.boot.actuate.metrics.web.reactive.server.MetricsWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ HTTP GET \"/login/oauth2/code/gooddata-domain?code=b_BdgRSvRk8_GDB7T6ZJSIqpJ4f_3H599mb-dJ0ZiuUoi&state=odwMs26ziiRkuHOQXybZDdIaa_I4YJE_oijnHeVS0PU%3D\" [ExceptionHandlingWebHandler]\nOriginal Stack Trace:\n\t\tat org.springframework.web.reactive.function.client.ExchangeFunctions$DefaultExchangeFunction.lambda$wrapException$9(ExchangeFunctions.java:141)\n\t\tat reactor.core.publisher.MonoErrorSupplied.subscribe(MonoErrorSupplied.java:55)\n\t\tat reactor.core.publisher.Mono.subscribe(Mono.java:4400)\n\t\tat reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:103)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:222)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:222)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:222)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat reactor.core.publisher.MonoNext$NextSubscriber.onError(MonoNext.java:93)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\n\t\tat reactor.core.publisher.MonoFlatMapMany$FlatMapManyMain.onError(MonoFlatMapMany.java:204)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat reactor.core.publisher.SerializedSubscriber.onError(SerializedSubscriber.java:124)\n\t\tat reactor.core.publisher.FluxRetryWhen$RetryWhenMainSubscriber.whenError(FluxRetryWhen.java:225)\n\t\tat reactor.core.publisher.FluxRetryWhen$RetryWhenOtherSubscriber.onError(FluxRetryWhen.java:274)\n\t\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\n\t\tat reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.innerError(FluxConcatMap.java:309)\n\t\tat reactor.core.publisher.FluxConcatMap$ConcatMapInner.onError(FluxConcatMap.java:875)\n\t\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat reactor.core.publisher.Operators.error(Operators.java:198)\n\t\tat reactor.core.publisher.MonoError.subscribe(MonoError.java:53)\n\t\tat reactor.core.publisher.Mono.subscribe(Mono.java:4400)\n\t\tat reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:451)\n\t\tat reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onNext(FluxConcatMap.java:251)\n\t\tat reactor.core.publisher.EmitterProcessor.drain(EmitterProcessor.java:491)\n\t\tat reactor.core.publisher.EmitterProcessor.tryEmitNext(EmitterProcessor.java:299)\n\t\tat reactor.core.publisher.SinkManySerialized.tryEmitNext(SinkManySerialized.java:100)\n\t\tat reactor.core.publisher.InternalManySink.emitNext(InternalManySink.java:27)\n\t\tat reactor.core.publisher.FluxRetryWhen$RetryWhenMainSubscriber.onError(FluxRetryWhen.java:190)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\n\t\tat reactor.core.publisher.MonoCreate$DefaultMonoSink.error(MonoCreate.java:194)\n\t\tat reactor.netty.http.client.HttpClientConnect$HttpObserver.onUncaughtException(HttpClientConnect.java:384)\n\t\tat reactor.netty.ReactorNetty$CompositeConnectionObserver.onUncaughtException(ReactorNetty.java:670)\n\t\tat reactor.netty.resources.DefaultPooledConnectionProvider$DisposableAcquire.onUncaughtException(DefaultPooledConnectionProvider.java:202)\n\t\tat reactor.netty.resources.DefaultPooledConnectionProvider$PooledConnection.onUncaughtException(DefaultPooledConnectionProvider.java:450)\n\t\tat reactor.netty.channel.FluxReceive.drainReceiver(FluxReceive.java:232)\n\t\tat reactor.netty.channel.FluxReceive.onInboundError(FluxReceive.java:453)\n\t\tat reactor.netty.channel.ChannelOperations.onInboundError(ChannelOperations.java:488)\n\t\tat reactor.netty.channel.ChannelOperationsHandler.exceptionCaught(ChannelOperationsHandler.java:126)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:273)\n\t\tat io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireExceptionCaught(CombinedChannelDuplexHandler.java:424)\n\t\tat io.netty.channel.ChannelHandlerAdapter.exceptionCaught(ChannelHandlerAdapter.java:92)\n\t\tat io.netty.channel.CombinedChannelDuplexHandler$1.fireExceptionCaught(CombinedChannelDuplexHandler.java:145)\n\t\tat io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:143)\n\t\tat io.netty.channel.CombinedChannelDuplexHandler.exceptionCaught(CombinedChannelDuplexHandler.java:231)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:273)\n\t\tat io.netty.handler.ssl.SslHandler.exceptionCaught(SslHandler.java:1104)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:273)\n\t\tat io.netty.channel.DefaultChannelPipeline$HeadContext.exceptionCaught(DefaultChannelPipeline.java:1377)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)\n\t\tat io.netty.channel.DefaultChannelPipeline.fireExceptionCaught(DefaultChannelPipeline.java:907)\n\t\tat io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.handleReadException(AbstractEpollStreamChannel.java:728)\n\t\tat io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:826)\n\t\tat io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:480)\n\t\tat io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)\n\t\tat io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)\n\t\tat io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)\n\t\tat io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)\n\t\tat java.base/java.lang.Thread.run(Unknown Source)\nCaused by: io.netty.channel.unix.Errors$NativeIoException: readAddress(..) failed: Connection reset by peer"
},
"kubernetes": {
"pod_name": "gooddata-cn-auth-service-85c7688db4-4zhpl",
"namespace_name": "gooddata-cn",
"pod_id": "3192f15f-7b93-4fbc-9497-7bf0c91a6a01",
"host": "ip-10-0-4-80.us-west-2.compute.internal",
"container_name": "auth-service",
"docker_id": "cb6731e421f2b0016532999b47f6d0d42f703271c6ddf3961e7f618f29d6eeba",
"container_hash": "gooddata/auth-service@sha256:7cd4d7eb6a7a291efa5d330a64a1d2c9aba9701eadc5c49d0b710afda99c7df6",
"container_image": "gooddata/auth-service:1.7.2"
}
}
{"log":"{\"ts\":\"2022-06-21 07:18:54.169\",\"level\":\"ERROR\",\"logger\":\"org.springframework.web.server.adapter.HttpWebHandlerAdapter\",\"thread\":\"reactor-http-epoll-3\",\"traceId\":\"bcc30f304c074c8c\",\"spanId\":\"bcc30f304c074c8c\",\"msg\":\"[48b21a35-339979] 500 Server Error for HTTP GET \\\"/login/oauth2/code/gooddata-domain?code=b_BdgRSvRk8_GDB7T6ZJSIqpJ4f_3H599mb-dJ0ZiuUoi&state=odwMs26ziiRkuHOQXybZDdIaa_I4YJE_oijnHeVS0PU%3D\\\"\",\"exc\":\"org.springframework.web.reactive.function.client.WebClientRequestException: readAddress(..) failed: Connection reset by peer; nested exception is io.netty.channel.unix.Errors$NativeIoException: readAddress(..) failed: Connection reset by peer\\n\\tat org.springframework.web.reactive.function.client.ExchangeFunctions$DefaultExchangeFunction.lambda$wrapException$9(ExchangeFunctions.java:141)\\n\\tSuppressed: The stacktrace has been enhanced by Reactor, refer to additional information below: \\nError has been observed at the following site(s):\\n\\t*__checkpoint ⇢ Request to POST https://login-domain/oauth/token [DefaultWebClient]\\n\\t*__checkpoint ⇢ org.springframework.security.oauth2.client.web.server.authentication.OAuth2LoginAuthenticationWebFilter [DefaultWebFilterChain]\\n\\t*__checkpoint ⇢ org.springframework.security.oauth2.client.web.server.OAuth2AuthorizationRequestRedirectWebFilter [DefaultWebFilterChain]\\n\\t*__checkpoint ⇢ org.springframework.security.oauth2.client.web.server.OAuth2AuthorizationRequestRedirectWebFilter [DefaultWebFilterChain]\\n\\t*__checkpoint ⇢ org.springframework.security.web.server.context.ReactorContextWebFilter [DefaultWebFilterChain]\\n\\t*__checkpoint ⇢ org.springframework.web.cors.reactive.CorsWebFilter [DefaultWebFilterChain]\\n\\t*__checkpoint ⇢ org.springframework.security.web.server.header.HttpHeaderWriterWebFilter [DefaultWebFilterChain]\\n\\t*__checkpoint ⇢ org.springframework.security.config.web.server.ServerHttpSecurity$ServerWebExchangeReactorContextWebFilter [DefaultWebFilterChain]\\n\\t*__checkpoint ⇢ org.springframework.security.web.server.WebFilterChainProxy [DefaultWebFilterChain]\\n\\t*__checkpoint ⇢ org.springframework.cloud.sleuth.instrument.web.TraceWebFilter [DefaultWebFilterChain]\\n\\t*__checkpoint ⇢ org.springframework.boot.actuate.metrics.web.reactive.server.MetricsWebFilter [DefaultWebFilterChain]\\n\\t*__checkpoint ⇢ HTTP GET \\\"/login/oauth2/code/gooddata-domain?code=b_BdgRSvRk8_GDB7T6ZJSIqpJ4f_3H599mb-dJ0ZiuUoi&state=odwMs26ziiRkuHOQXybZDdIaa_I4YJE_oijnHeVS0PU%3D\\\" [ExceptionHandlingWebHandler]\\nOriginal Stack Trace:\\n\\t\\tat org.springframework.web.reactive.function.client.ExchangeFunctions$DefaultExchangeFunction.lambda$wrapException$9(ExchangeFunctions.java:141)\\n\\t\\tat reactor.core.publisher.MonoErrorSupplied.subscribe(MonoErrorSupplied.java:55)\\n\\t\\tat reactor.core.publisher.Mono.subscribe(Mono.java:4400)\\n\\t\\tat reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:103)\\n\\t\\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\\n\\t\\tat reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:222)\\n\\t\\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\\n\\t\\tat reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:222)\\n\\t\\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\\n\\t\\tat reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:222)\\n\\t\\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\\n\\t\\tat reactor.core.publisher.MonoNext$NextSubscriber.onError(MonoNext.java:93)\\n\\t\\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\\n\\t\\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\\n\\t\\tat reactor.core.publisher.MonoFlatMapMany$FlatMapManyMain.onError(MonoFlatMapMany.java:204)\\n\\t\\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\\n\\t\\tat reactor.core.publisher.SerializedSubscriber.onError(SerializedSubscriber.java:124)\\n\\t\\tat reactor.core.publisher.FluxRetryWhen$RetryWhenMainSubscriber.whenError(FluxRetryWhen.java:225)\\n\\t\\tat reactor.core.publisher.FluxRetryWhen$RetryWhenOtherSubscriber.onError(FluxRetryWhen.java:274)\\n\\t\\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\\n\\t\\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\\n\\t\\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\\n\\t\\tat reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.innerError(FluxConcatMap.java:309)\\n\\t\\tat reactor.core.publisher.FluxConcatMap$ConcatMapInner.onError(FluxConcatMap.java:875)\\n\\t\\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\\n\\t\\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\\n\\t\\tat reactor.core.publisher.Operators.error(Operators.java:198)\\n\\t\\tat reactor.core.publisher.MonoError.subscribe(MonoError.java:53)\\n\\t\\tat reactor.core.publisher.Mono.subscribe(Mono.java:4400)\\n\\t\\tat reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:451)\\n\\t\\tat reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onNext(FluxConcatMap.java:251)\\n\\t\\tat reactor.core.publisher.EmitterProcessor.drain(EmitterProcessor.java:491)\\n\\t\\tat reactor.core.publisher.EmitterProcessor.tryEmitNext(EmitterProcessor.java:299)\\n\\t\\tat reactor.core.publisher.SinkManySerialized.tryEmitNext(SinkManySerialized.java:100)\\n\\t\\tat reactor.core.publisher.InternalManySink.emitNext(InternalManySink.java:27)\\n\\t\\tat reactor.core.publisher.FluxRetryWhen$RetryWhenMainSubscriber.onError(FluxRetryWhen.java:190)\\n\\t\\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\\n\\t\\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\\n\\t\\tat reactor.core.publisher.MonoCreate$DefaultMonoSink.error(MonoCreate.java:194)\\n\\t\\tat reactor.netty.http.client.HttpClientConnect$HttpObserver.onUncaughtException(HttpClientConnect.java:384)\\n\\t\\tat reactor.netty.ReactorNetty$CompositeConnectionObserver.onUncaughtException(ReactorNetty.java:670)\\n\\t\\tat reactor.netty.resources.DefaultPooledConnectionProvider$DisposableAcquire.onUncaughtException(DefaultPooledConnectionProvider.java:202)\\n\\t\\tat reactor.netty.resources.DefaultPooledConnectionProvider$PooledConnection.onUncaughtException(DefaultPooledConnectionProvider.java:450)\\n\\t\\tat reactor.netty.channel.FluxReceive.drainReceiver(FluxReceive.java:232)\\n\\t\\tat reactor.netty.channel.FluxReceive.onInboundError(FluxReceive.java:453)\\n\\t\\tat reactor.netty.channel.ChannelOperations.onInboundError(ChannelOperations.java:488)\\n\\t\\tat reactor.netty.channel.ChannelOperationsHandler.exceptionCaught(ChannelOperationsHandler.java:126)\\n\\t\\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)\\n\\t\\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)\\n\\t\\tat io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:273)\\n\\t\\tat io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireExceptionCaught(CombinedChannelDuplexHandler.java:424)\\n\\t\\tat io.netty.channel.ChannelHandlerAdapter.exceptionCaught(ChannelHandlerAdapter.java:92)\\n\\t\\tat io.netty.channel.CombinedChannelDuplexHandler$1.fireExceptionCaught(CombinedChannelDuplexHandler.java:145)\\n\\t\\tat io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:143)\\n\\t\\tat io.netty.channel.CombinedChannelDuplexHandler.exceptionCaught(CombinedChannelDuplexHandler.java:231)\\n\\t\\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)\\n\\t\\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)\\n\\t\\tat io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:273)\\n\\t\\tat io.netty.handler.ssl.SslHandler.exceptionCaught(SslHandler.java:1104)\\n\\t\\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)\\n\\t\\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)\\n\\t\\tat io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:273)\\n\\t\\tat io.netty.channel.DefaultChannelPipeline$HeadContext.exceptionCaught(DefaultChannelPipeline.java:1377)\\n\\t\\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)\\n\\t\\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)\\n\\t\\tat io.netty.channel.DefaultChannelPipeline.fireExceptionCaught(DefaultChannelPipeline.java:907)\\n\\t\\tat io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.handleReadException(AbstractEpollStreamChannel.java:728)\\n\\t\\tat io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:826)\\n\\t\\tat io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:480)\\n\\t\\tat io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)\\n\\t\\tat io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)\\n\\t\\tat io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)\\n\\t\\tat io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)\\n\\t\\tat java.base/java.lang.Thread.run(Unknown Source)\\nCaused by: io.netty.channel.unix.Errors$NativeIoException: readAddress(..) failed: Connection reset by peer\\n\"}\n","stream":"stdout","log_processed":{"ts":"2022-06-21 07:18:54.169","level":"ERROR","logger":"org.springframework.web.server.adapter.HttpWebHandlerAdapter","thread":"reactor-http-epoll-3","traceId":"bcc30f304c074c8c","spanId":"bcc30f304c074c8c","msg":"[48b21a35-339979] 500 Server Error for HTTP GET \"/login/oauth2/code/gooddata-domain?code=b_BdgRSvRk8_GDB7T6ZJSIqpJ4f_3H599mb-dJ0ZiuUoi&state=odwMs26ziiRkuHOQXybZDdIaa_I4YJE_oijnHeVS0PU%3D\"","exc":"org.springframework.web.reactive.function.client.WebClientRequestException: readAddress(..) failed: Connection reset by peer; nested exception is io.netty.channel.unix.Errors$NativeIoException: readAddress(..) failed: Connection reset by peer\n\tat org.springframework.web.reactive.function.client.ExchangeFunctions$DefaultExchangeFunction.lambda$wrapException$9(ExchangeFunctions.java:141)\n\tSuppressed: The stacktrace has been enhanced by Reactor, refer to additional information below: \nError has been observed at the following site(s):\n\t*__checkpoint ⇢ Request to POST https://login-domain/oauth/token [DefaultWebClient]\n\t*__checkpoint ⇢ org.springframework.security.oauth2.client.web.server.authentication.OAuth2LoginAuthenticationWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.security.oauth2.client.web.server.OAuth2AuthorizationRequestRedirectWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.security.oauth2.client.web.server.OAuth2AuthorizationRequestRedirectWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.security.web.server.context.ReactorContextWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.web.cors.reactive.CorsWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.security.web.server.header.HttpHeaderWriterWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.security.config.web.server.ServerHttpSecurity$ServerWebExchangeReactorContextWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.security.web.server.WebFilterChainProxy [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.cloud.sleuth.instrument.web.TraceWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ org.springframework.boot.actuate.metrics.web.reactive.server.MetricsWebFilter [DefaultWebFilterChain]\n\t*__checkpoint ⇢ HTTP GET \"/login/oauth2/code/gooddata-domain?code=b_BdgRSvRk8_GDB7T6ZJSIqpJ4f_3H599mb-dJ0ZiuUoi&state=odwMs26ziiRkuHOQXybZDdIaa_I4YJE_oijnHeVS0PU%3D\" [ExceptionHandlingWebHandler]\nOriginal Stack Trace:\n\t\tat org.springframework.web.reactive.function.client.ExchangeFunctions$DefaultExchangeFunction.lambda$wrapException$9(ExchangeFunctions.java:141)\n\t\tat reactor.core.publisher.MonoErrorSupplied.subscribe(MonoErrorSupplied.java:55)\n\t\tat reactor.core.publisher.Mono.subscribe(Mono.java:4400)\n\t\tat reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:103)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:222)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:222)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat reactor.core.publisher.FluxPeek$PeekSubscriber.onError(FluxPeek.java:222)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat reactor.core.publisher.MonoNext$NextSubscriber.onError(MonoNext.java:93)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\n\t\tat reactor.core.publisher.MonoFlatMapMany$FlatMapManyMain.onError(MonoFlatMapMany.java:204)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat reactor.core.publisher.SerializedSubscriber.onError(SerializedSubscriber.java:124)\n\t\tat reactor.core.publisher.FluxRetryWhen$RetryWhenMainSubscriber.whenError(FluxRetryWhen.java:225)\n\t\tat reactor.core.publisher.FluxRetryWhen$RetryWhenOtherSubscriber.onError(FluxRetryWhen.java:274)\n\t\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\n\t\tat reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.innerError(FluxConcatMap.java:309)\n\t\tat reactor.core.publisher.FluxConcatMap$ConcatMapInner.onError(FluxConcatMap.java:875)\n\t\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat reactor.core.publisher.Operators.error(Operators.java:198)\n\t\tat reactor.core.publisher.MonoError.subscribe(MonoError.java:53)\n\t\tat reactor.core.publisher.Mono.subscribe(Mono.java:4400)\n\t\tat reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.drain(FluxConcatMap.java:451)\n\t\tat reactor.core.publisher.FluxConcatMap$ConcatMapImmediate.onNext(FluxConcatMap.java:251)\n\t\tat reactor.core.publisher.EmitterProcessor.drain(EmitterProcessor.java:491)\n\t\tat reactor.core.publisher.EmitterProcessor.tryEmitNext(EmitterProcessor.java:299)\n\t\tat reactor.core.publisher.SinkManySerialized.tryEmitNext(SinkManySerialized.java:100)\n\t\tat reactor.core.publisher.InternalManySink.emitNext(InternalManySink.java:27)\n\t\tat reactor.core.publisher.FluxRetryWhen$RetryWhenMainSubscriber.onError(FluxRetryWhen.java:190)\n\t\tat com.gooddata.tiger.oauth2.reactive.MdcContextLifter.onError(MdcContextLifterConfiguration.kt:72)\n\t\tat org.springframework.cloud.sleuth.instrument.reactor.ScopePassingSpanSubscriber.onError(ScopePassingSpanSubscriber.java:95)\n\t\tat reactor.core.publisher.MonoCreate$DefaultMonoSink.error(MonoCreate.java:194)\n\t\tat reactor.netty.http.client.HttpClientConnect$HttpObserver.onUncaughtException(HttpClientConnect.java:384)\n\t\tat reactor.netty.ReactorNetty$CompositeConnectionObserver.onUncaughtException(ReactorNetty.java:670)\n\t\tat reactor.netty.resources.DefaultPooledConnectionProvider$DisposableAcquire.onUncaughtException(DefaultPooledConnectionProvider.java:202)\n\t\tat reactor.netty.resources.DefaultPooledConnectionProvider$PooledConnection.onUncaughtException(DefaultPooledConnectionProvider.java:450)\n\t\tat reactor.netty.channel.FluxReceive.drainReceiver(FluxReceive.java:232)\n\t\tat reactor.netty.channel.FluxReceive.onInboundError(FluxReceive.java:453)\n\t\tat reactor.netty.channel.ChannelOperations.onInboundError(ChannelOperations.java:488)\n\t\tat reactor.netty.channel.ChannelOperationsHandler.exceptionCaught(ChannelOperationsHandler.java:126)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:273)\n\t\tat io.netty.channel.CombinedChannelDuplexHandler$DelegatingChannelHandlerContext.fireExceptionCaught(CombinedChannelDuplexHandler.java:424)\n\t\tat io.netty.channel.ChannelHandlerAdapter.exceptionCaught(ChannelHandlerAdapter.java:92)\n\t\tat io.netty.channel.CombinedChannelDuplexHandler$1.fireExceptionCaught(CombinedChannelDuplexHandler.java:145)\n\t\tat io.netty.channel.ChannelInboundHandlerAdapter.exceptionCaught(ChannelInboundHandlerAdapter.java:143)\n\t\tat io.netty.channel.CombinedChannelDuplexHandler.exceptionCaught(CombinedChannelDuplexHandler.java:231)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:273)\n\t\tat io.netty.handler.ssl.SslHandler.exceptionCaught(SslHandler.java:1104)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.fireExceptionCaught(AbstractChannelHandlerContext.java:273)\n\t\tat io.netty.channel.DefaultChannelPipeline$HeadContext.exceptionCaught(DefaultChannelPipeline.java:1377)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:302)\n\t\tat io.netty.channel.AbstractChannelHandlerContext.invokeExceptionCaught(AbstractChannelHandlerContext.java:281)\n\t\tat io.netty.channel.DefaultChannelPipeline.fireExceptionCaught(DefaultChannelPipeline.java:907)\n\t\tat io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.handleReadException(AbstractEpollStreamChannel.java:728)\n\t\tat io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:826)\n\t\tat io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:480)\n\t\tat io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)\n\t\tat io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)\n\t\tat io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)\n\t\tat io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)\n\t\tat java.base/java.lang.Thread.run(Unknown Source)\nCaused by: io.netty.channel.unix.Errors$NativeIoException: readAddress(..) failed: Connection reset by peer"},"kubernetes":{"pod_name":"gooddata-cn-auth-service-85c7688db4-4zhpl","namespace_name":"gooddata-cn","pod_id":"3192f15f-7b93-4fbc-9497-7bf0c91a6a01","host":"ip-10-0-4-80.us-west-2.compute.internal","container_name":"auth-service","docker_id":"cb6731e421f2b0016532999b47f6d0d42f703271c6ddf3961e7f618f29d6eeba","container_hash":"gooddata/auth-service@sha256:7cd4d7eb6a7a291efa5d330a64a1d2c9aba9701eadc5c49d0b710afda99c7df6","container_image":"gooddata/auth-service:1.7.2"}}

Here is the stack trace what I can share with you.

Thanks.

Userlevel 3

Hi Zoltan,

I’ve spoken with our developers, and this is a known issue that is currently being worked on. We will keep you updated with details on the fix as they present themselves. We are greatly sorry for any inconvenience. 

 

 

Hi Joseph,

Thanks for the info!

Unfortunately it’s a blocker right now for us, please handle it with high prio. 

BTW we’ve seen that there will be a v2.0 release from the GoodData.CN in July, can we check somewhere the planned new feature set?

Thank you

Zoltan

Userlevel 3

Hi Zolton, 

 

I believe this was discussed with your GoodData Account Owner, and the SSO related error will be fixed in 2.0.

 

All the best

Reply