-
Bug
-
Resolution: Done
-
Major
-
1.0.0.Alpha15
-
None
While testing one of the quickstarts against WildFly, I noticed that SecureHashMap runs into an infinite loop and as a result the request never completes. The entire thread dump is attached, but the relevant part looks like this:
"default task-27" prio=10 tid=0x78ff6000 nid=0x41e6 runnable [0x7955c000] java.lang.Thread.State: RUNNABLE at io.undertow.util.SecureHashMap.doPut(SecureHashMap.java:218) at io.undertow.util.SecureHashMap.putIfAbsent(SecureHashMap.java:310) at io.undertow.server.handlers.cache.LRUCache.add(LRUCache.java:69) at io.undertow.server.handlers.resource.CachingResourceManager.getResource(CachingResourceManager.java:74) at io.undertow.servlet.handlers.DefaultServlet.doGet(DefaultServlet.java:88) at javax.servlet.http.HttpServlet.service(HttpServlet.java:687) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:87) at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:130) at io.undertow.websockets.jsr.JsrWebSocketFilter.doFilter(JsrWebSocketFilter.java:138) at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:56) at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:132) at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:85) at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:56) at io.undertow.server.HttpHandlers.executeHandler(HttpHandlers.java:46) at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:116) at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:79) at io.undertow.security.handlers.AuthenticationCallHandler.handleRequest(AuthenticationCallHandler.java:52) at io.undertow.server.HttpHandlers.executeHandler(HttpHandlers.java:46) at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46) at io.undertow.server.HttpHandlers.executeHandler(HttpHandlers.java:46) at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:66) at io.undertow.server.HttpHandlers.executeHandler(HttpHandlers.java:46) at io.undertow.security.handlers.SecurityInitialHandler.handleRequest(SecurityInitialHandler.java:71) at io.undertow.server.HttpHandlers.executeHandler(HttpHandlers.java:46) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:26) at org.wildfly.extension.undertow.security.SecurityContextCreationHandler.handleRequest(SecurityContextCreationHandler.java:56) at io.undertow.server.HttpHandlers.executeHandler(HttpHandlers.java:46) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:26) at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:118) at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:106) at io.undertow.servlet.handlers.ServletInitialHandler.handleRequest(ServletInitialHandler.java:83) at io.undertow.server.HttpHandlers.executeRootHandler(HttpHandlers.java:52) at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:544) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:722)