Uploaded image for project: 'Undertow'
  1. Undertow
  2. UNDERTOW-2346

Deadlock when using websocket and ssl

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • 2.1.6.Final, 2.2.31.Final
    • SSL, Web Sockets
    • None

      Hello everyone.

      We are facing application deadlock when using undertow + ssl + websocket + spring boot. We were not able to reproduce it locally, just in production environment.  The application gets to a point that is needed to restart to back to work.

      We use spring boot version 2.3.9.RELEASE, i don`t know if spring is calling undertow in some way that may cause the problem.

       

      Appreciate any help.

       
       

      {text}

      Found one Java-level deadlock:
      =============================
      "XNIO-1 task-82":
      waiting to lock monitor 0x000000007d13d5c8 (object 0x000000012305ed70, a io.undertow.server.session.InMemorySessionManager$SessionImpl),
      which is held by "XNIO-1 task-5"
      "XNIO-1 task-5":
      waiting to lock monitor 0x000000005b2df7c8 (object 0x0000000141253b90, a io.undertow.protocols.ssl.SslConduit),
      which is held by "XNIO-1 I/O-63"
      "XNIO-1 I/O-63":
      waiting to lock monitor 0x000000007d13d5c8 (object 0x000000012305ed70, a io.undertow.server.session.InMemorySessionManager$SessionImpl),
      which is held by "XNIO-1 task-5"

      Java stack information for the threads listed above:
      ===================================================
      "XNIO-1 task-82":
      at io.undertow.server.session.InMemorySessionManager$SessionImpl.bumpTimeout(InMemorySessionManager.java:420)

      • waiting to lock <0x000000012305ed70> (a io.undertow.server.session.InMemorySessionManager$SessionImpl)
        at io.undertow.server.session.InMemorySessionManager$SessionImpl.requestDone(InMemorySessionManager.java:480)
        at io.undertow.servlet.spec.ServletContextImpl.updateSessionAccessTime(ServletContextImpl.java:976)
        at io.undertow.servlet.spec.HttpServletResponseImpl.responseDone(HttpServletResponseImpl.java:627)
        at io.undertow.servlet.spec.AsyncContextImpl.onAsyncCompleteAndRespond(AsyncContextImpl.java:614)
        at io.undertow.servlet.spec.AsyncContextImpl.access$300(AsyncContextImpl.java:73)
        at io.undertow.servlet.spec.AsyncContextImpl$3.run(AsyncContextImpl.java:313)
        at io.undertow.servlet.spec.AsyncContextImpl$6.run(AsyncContextImpl.java:472)
        at io.undertow.servlet.spec.AsyncContextImpl$TaskDispatchRunnable.run(AsyncContextImpl.java:591)
        at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
        at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
        at java.lang.Thread.run(Thread.java:748)
        "XNIO-1 task-5":
        at io.undertow.protocols.ssl.SslConduit.closed(SslConduit.java:1054)
      • waiting to lock <0x0000000141253b90> (a io.undertow.protocols.ssl.SslConduit)
        at io.undertow.protocols.ssl.SslConduit.close(SslConduit.java:1155)
        at io.undertow.protocols.ssl.UndertowSslConnection.closeAction(UndertowSslConnection.java:154)
        at org.xnio.Connection.close(Connection.java:132)
        at org.xnio.IoUtils.safeClose(IoUtils.java:152)
        at io.undertow.server.protocol.framed.AbstractFramedChannel.close(AbstractFramedChannel.java:820)
        at org.xnio.IoUtils.safeClose(IoUtils.java:152)
        at io.undertow.websockets.core.WebSockets.sendInternal(WebSockets.java:917)
        at io.undertow.websockets.core.WebSockets.sendInternal(WebSockets.java:900)
        at io.undertow.websockets.core.WebSockets.sendClose(WebSockets.java:856)
        at io.undertow.websockets.core.WebSockets.sendClose(WebSockets.java:842)
        at io.undertow.websockets.core.WebSockets.sendClose(WebSockets.java:819)
        at io.undertow.websockets.jsr.JsrWebSocketFilter$LogoutListener.sessionDestroyed(JsrWebSocketFilter.java:202)
      • locked <0x000000012305ed70> (a io.undertow.server.session.InMemorySessionManager$SessionImpl)
        at io.undertow.servlet.core.ApplicationListeners.sessionDestroyed(ApplicationListeners.java:366)
        at io.undertow.servlet.core.SessionListenerBridge.doDestroy(SessionListenerBridge.java:98)
        at io.undertow.servlet.core.SessionListenerBridge.sessionDestroyed(SessionListenerBridge.java:78)
        at io.undertow.server.session.SessionListeners.sessionDestroyed(SessionListeners.java:61)
        at io.undertow.server.session.InMemorySessionManager$SessionImpl.invalidate(InMemorySessionManager.java:589)
        at io.undertow.server.session.InMemorySessionManager$SessionImpl.invalidate(InMemorySessionManager.java:563)
        at io.undertow.servlet.spec.HttpSessionImpl.invalidate(HttpSessionImpl.java:198)
        at org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler.logout(SecurityContextLogoutHandler.java:66)
        at org.springframework.security.web.authentication.logout.CompositeLogoutHandler.logout(CompositeLogoutHandler.java:54)
        at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:109)
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at org.springframework.security.web.csrf.CsrfFilter.doFilterInternal(CsrfFilter.java:117)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:92)
        at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:77)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)
        at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)
        at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)
        at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at io.sentry.spring.tracing.SentryTracingFilter.doFilterInternal(SentryTracingFilter.java:87)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at io.sentry.spring.SentrySpringFilter.doFilterInternal(SentrySpringFilter.java:71)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
        at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
        at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
        at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
        at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
        at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:111)
        at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
        at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
        at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
        at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
        at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:269)
        at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:78)
        at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:133)
        at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:130)
        at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
        at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
        at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:249)
        at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:78)
        at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:99)
        at io.undertow.server.Connectors.executeRootHandler(Connectors.java:390)
        at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:836)
        at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
        at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
        at java.lang.Thread.run(Thread.java:748)
        "XNIO-1 I/O-63":
        at io.undertow.websockets.jsr.JsrWebSocketFilter$1$1.handleEvent(JsrWebSocketFilter.java:159)
      • waiting to lock <0x000000012305ed70> (a io.undertow.server.session.InMemorySessionManager$SessionImpl)
        at io.undertow.websockets.jsr.JsrWebSocketFilter$1$1.handleEvent(JsrWebSocketFilter.java:156)
        at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
        at io.undertow.server.protocol.framed.AbstractFramedChannel$FrameCloseListener.handleEvent(AbstractFramedChannel.java:1075)
        at io.undertow.server.protocol.framed.AbstractFramedChannel$FrameCloseListener.handleEvent(AbstractFramedChannel.java:990)
        at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
        at io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler.terminated(SslConduit.java:1252)
        at org.xnio.nio.NioSocketConduit.readTerminated(NioSocketConduit.java:332)
        at org.xnio.nio.NioSocketConduit.terminateReads(NioSocketConduit.java:325)
        at org.xnio.nio.NioSocketConduit.read(NioSocketConduit.java:294)
        at io.undertow.protocols.ssl.SslConduit.doUnwrap(SslConduit.java:719)
      • locked <0x0000000141253b90> (a io.undertow.protocols.ssl.SslConduit)
        at io.undertow.protocols.ssl.SslConduit.doHandshake(SslConduit.java:664)
        at io.undertow.protocols.ssl.SslConduit.access$900(SslConduit.java:68)
        at io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler.readReady(SslConduit.java:1174)
        at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:89)
        at org.xnio.nio.WorkerThread.run(WorkerThread.java:591)

      Found one Java-level deadlock:
      =============================
      "XNIO-1 task-42":
      waiting to lock monitor 0x000000004d927e68 (object 0x00000000ba1dd7c8, a io.undertow.protocols.ssl.SslConduit),
      which is held by "XNIO-1 I/O-36"
      "XNIO-1 I/O-36":
      waiting to lock monitor 0x00000000410f8d68 (object 0x00000000b6e87bb0, a io.undertow.server.session.InMemorySessionManager$SessionImpl),
      which is held by "XNIO-1 task-42"

      Java stack information for the threads listed above:
      ===================================================
      "XNIO-1 task-42":
      at io.undertow.protocols.ssl.SslConduit.closed(SslConduit.java:1054)

      • waiting to lock <0x00000000ba1dd7c8> (a io.undertow.protocols.ssl.SslConduit)
        at io.undertow.protocols.ssl.SslConduit.close(SslConduit.java:1155)
        at io.undertow.protocols.ssl.UndertowSslConnection.closeAction(UndertowSslConnection.java:154)
        at org.xnio.Connection.close(Connection.java:132)
        at org.xnio.IoUtils.safeClose(IoUtils.java:152)
        at io.undertow.server.protocol.framed.AbstractFramedChannel.close(AbstractFramedChannel.java:820)
        at org.xnio.IoUtils.safeClose(IoUtils.java:152)
        at io.undertow.websockets.core.WebSockets.sendInternal(WebSockets.java:917)
        at io.undertow.websockets.core.WebSockets.sendInternal(WebSockets.java:900)
        at io.undertow.websockets.core.WebSockets.sendClose(WebSockets.java:856)
        at io.undertow.websockets.core.WebSockets.sendClose(WebSockets.java:842)
        at io.undertow.websockets.core.WebSockets.sendClose(WebSockets.java:819)
        at io.undertow.websockets.jsr.JsrWebSocketFilter$LogoutListener.sessionDestroyed(JsrWebSocketFilter.java:202)
      • locked <0x00000000b6e87bb0> (a io.undertow.server.session.InMemorySessionManager$SessionImpl)
        at io.undertow.servlet.core.ApplicationListeners.sessionDestroyed(ApplicationListeners.java:366)
        at io.undertow.servlet.core.SessionListenerBridge.doDestroy(SessionListenerBridge.java:98)
        at io.undertow.servlet.core.SessionListenerBridge.sessionDestroyed(SessionListenerBridge.java:78)
        at io.undertow.server.session.SessionListeners.sessionDestroyed(SessionListeners.java:61)
        at io.undertow.server.session.InMemorySessionManager$SessionImpl.invalidate(InMemorySessionManager.java:589)
        at io.undertow.server.session.InMemorySessionManager$SessionImpl.invalidate(InMemorySessionManager.java:563)
        at io.undertow.servlet.spec.HttpSessionImpl.invalidate(HttpSessionImpl.java:198)
        at org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler.logout(SecurityContextLogoutHandler.java:66)
        at org.springframework.security.web.authentication.logout.CompositeLogoutHandler.logout(CompositeLogoutHandler.java:54)
        at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:109)
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at org.springframework.security.web.csrf.CsrfFilter.doFilterInternal(CsrfFilter.java:117)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:92)
        at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:77)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
        at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)
        at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)
        at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)
        at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:93)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at io.sentry.spring.tracing.SentryTracingFilter.doFilterInternal(SentryTracingFilter.java:87)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at io.sentry.spring.SentrySpringFilter.doFilterInternal(SentrySpringFilter.java:71)
        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
        at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
        at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
        at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
        at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
        at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
        at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
        at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
        at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:111)
        at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
        at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
        at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
        at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
        at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
        at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:269)
        at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:78)
        at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:133)
        at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:130)
        at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
        at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
        at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:249)
        at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:78)
        at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:99)
        at io.undertow.server.Connectors.executeRootHandler(Connectors.java:390)
        at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:836)
        at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
        at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
        at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1449)
        at java.lang.Thread.run(Thread.java:748)
        "XNIO-1 I/O-36":
        at io.undertow.websockets.jsr.JsrWebSocketFilter$1$1.handleEvent(JsrWebSocketFilter.java:159)
      • waiting to lock <0x00000000b6e87bb0> (a io.undertow.server.session.InMemorySessionManager$SessionImpl)
        at io.undertow.websockets.jsr.JsrWebSocketFilter$1$1.handleEvent(JsrWebSocketFilter.java:156)
        at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
        at io.undertow.server.protocol.framed.AbstractFramedChannel$FrameCloseListener.handleEvent(AbstractFramedChannel.java:1075)
        at io.undertow.server.protocol.framed.AbstractFramedChannel$FrameCloseListener.handleEvent(AbstractFramedChannel.java:990)
        at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
        at io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler.terminated(SslConduit.java:1252)
        at org.xnio.nio.NioSocketConduit.readTerminated(NioSocketConduit.java:332)
        at org.xnio.nio.NioSocketConduit.terminateReads(NioSocketConduit.java:325)
        at org.xnio.nio.NioSocketConduit.read(NioSocketConduit.java:294)
        at io.undertow.protocols.ssl.SslConduit.doUnwrap(SslConduit.java:719)
      • locked <0x00000000ba1dd7c8> (a io.undertow.protocols.ssl.SslConduit)
        at io.undertow.protocols.ssl.SslConduit.doHandshake(SslConduit.java:664)
        at io.undertow.protocols.ssl.SslConduit.access$900(SslConduit.java:68)
        at io.undertow.protocols.ssl.SslConduit$SslReadReadyHandler.readReady(SslConduit.java:1174)
        at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:89)
        at org.xnio.nio.WorkerThread.run(WorkerThread.java:591)

      Found 3 deadlocks.

            flaviarnn Flavia Rainone
            nathanmolinari Nathan Molinari
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: