-
Notifications
You must be signed in to change notification settings - Fork 46
Description
Keycloak Version
26.4.2
Extension Version
1.16.0
Describe the bug
Sometimes I'm getting this error in Keycloak logs:
-
exception.exceptionType:
org.apache.http.NoHttpResponseException -
exception.frames.class:
org.apache.http.impl.conn.DefaultHttpResponseParser, org.apache.http.impl.conn.DefaultHttpResponseParser, org.apache.http.impl.io.AbstractMessageParser, org.apache.http.impl.DefaultBHttpClientConnection, org.apache.http.impl.conn.CPoolProxy, org.apache.http.protocol.HttpRequestExecutor, org.apache.http.protocol.HttpRequestExecutor, org.apache.http.impl.execchain.MainClientExec, org.apache.http.impl.execchain.ProtocolExec, org.apache.http.impl.execchain.RetryExec, org.apache.http.impl.execchain.RedirectExec, org.apache.http.impl.client.InternalHttpClient, org.apache.http.impl.client.CloseableHttpClient, org.apache.http.impl.client.CloseableHttpClient, org.apache.http.impl.client.CloseableHttpClient, org.keycloak.broker.provider.util.SimpleHttp, org.keycloak.broker.provider.util.SimpleHttp, at.klausbetz.provider.AppleIdentityProvider, at.klausbetz.provider.AppleIdentityProviderEndpoint, jdk.internal.reflect.GeneratedMethodAccessor416, jdk.internal.reflect.DelegatingMethodAccessorImpl, java.lang.reflect.Method, org.jboss.resteasy.core.MethodInjectorImpl, org.jboss.resteasy.core.MethodInjectorImpl, org.jboss.resteasy.core.ResourceMethodInvoker, org.jboss.resteasy.core.ResourceMethodInvoker, org.jboss.resteasy.core.ResourceMethodInvoker, org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext, org.jboss.resteasy.core.ResourceMethodInvoker, org.jboss.resteasy.core.ResourceMethodInvoker, org.jboss.resteasy.core.ResourceLocatorInvoker, org.jboss.resteasy.core.ResourceLocatorInvoker, org.jboss.resteasy.core.ResourceLocatorInvoker, org.jboss.resteasy.core.ResourceLocatorInvoker, org.jboss.resteasy.core.ResourceLocatorInvoker, org.jboss.resteasy.core.SynchronousDispatcher, org.jboss.resteasy.core.SynchronousDispatcher, org.jboss.resteasy.core.SynchronousDispatcher, org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext, org.jboss.resteasy.core.SynchronousDispatcher, org.jboss.resteasy.core.SynchronousDispatcher, io.quarkus.resteasy.runtime.standalone.RequestDispatcher, io.quarkus.resteasy.runtime.standalone.VertxRequestHandler, io.quarkus.resteasy.runtime.standalone.VertxRequestHandler, io.quarkus.resteasy.runtime.standalone.VertxRequestHandler, io.vertx.ext.web.impl.RouteState, io.vertx.ext.web.impl.RoutingContextImplBase, io.vertx.ext.web.impl.RoutingContextWrapper, io.quarkus.vertx.http.runtime.StaticResourcesRecorder$2, io.quarkus.vertx.http.runtime.StaticResourcesRecorder$2, io.vertx.ext.web.impl.RouteState, io.vertx.ext.web.impl.RoutingContextImplBase, io.vertx.ext.web.impl.RoutingContextWrapper, io.quarkus.vertx.http.runtime.VertxHttpRecorder$6, io.quarkus.vertx.http.runtime.VertxHttpRecorder$6, io.vertx.ext.web.impl.RouteState, io.vertx.ext.web.impl.RoutingContextImplBase, io.vertx.ext.web.impl.RoutingContextWrapper, org.keycloak.quarkus.runtime.integration.web.QuarkusRequestFilter, io.quarkus.vertx.core.runtime.VertxCoreRecorder$14, org.jboss.threads.EnhancedQueueExecutor$Task, org.jboss.threads.EnhancedQueueExecutor$ThreadBody, org.jboss.threads.DelegatingRunnable, org.jboss.threads.ThreadLocalResettingRunnable, io.netty.util.concurrent.FastThreadLocalRunnable, java.lang.Thread -
exception.frames.line:
141, 56, 259, 163, 157, 273, 125, 272, 186, 89, 110, 185, 83, 108, 56, 292, 229, 117, 89, 43, 568, 170, 130, 660, 524, 474, 364, 476, 434, 192, 152, 183, 141, 32, 492, 261, 161, 364, 164, 247, 73, 151, 82, 42, 1,284, 173, 200, 84, 71, 1,284, 173, 200, 430, 408, 1,284, 173, 200, 82, 576, 2,449, 1,478, 29, 29, 30, 833 -
exception.frames.method:
parseHead, parseHead, parse, receiveResponseHeader, receiveResponseHeader, doReceiveResponse, execute, execute, execute, execute, execute, doExecute, execute, execute, execute, makeRequest, asResponse, sendTokenRequest, authResponse, invoke, invoke, invoke, invoke, invoke, internalInvokeOnTarget, invokeOnTargetAfterFilter, lambda$invokeOnTarget$2, filter, invokeOnTarget, invoke, invokeOnTargetObject, invoke, invokeOnTargetObject, invoke, invoke, invoke, lambda$invoke$4, lambda$preprocess$0, filter, preprocess, invoke, service, dispatch, handle, handle, handleContext, iterateNext, next, handle, handle, handleContext, iterateNext, next, handle, handle, handleContext, iterateNext, next, lambda$createBlockingHandler$0, runWith, run, run, run, run, run, run -
exception.message:
appleid.apple.com:443 failed to respond
Expected behavior
The exception should be caught and the call to Apple should be retried. The way it is at the moment Keycloak responds with a 502, so users need to retry again login in with Apple.