Undertow WildFly Subsystem Concepts
Jump to navigation
Jump to search
Internal
Threading Model
Also see:
Fiter
A filter is functionally equivalent to a global valve used in previous versions of JBoss (JBoss Web). It enables some aspect of a request to be modified and can use predicates to control when a filter executes.
Threads
The threads are named according to the following pattern: "RequestHandler (2208728)", and a typical stack trace that involves database access:
"RequestHandler (2208728)" #184 prio=5 os_prio=0 tid=0x0000000069a7e800 nid=0x1588 runnable [0x000000007b03d000] java.lang.Thread.State: RUNNABLE at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.socketRead(SocketInputStream.java:116) at java.net.SocketInputStream.read(SocketInputStream.java:170) at java.net.SocketInputStream.read(SocketInputStream.java:141) at com.microsoft.sqlserver.jdbc.TDSChannel.read(IOBuffer.java:1782) at com.microsoft.sqlserver.jdbc.TDSReader.readPacket(IOBuffer.java:4838) - locked <0x00000004805d6a38> (a com.microsoft.sqlserver.jdbc.TDSReader) at com.microsoft.sqlserver.jdbc.TDSCommand.startResponse(IOBuffer.java:6150) at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(SQLServerPreparedStatement.java:402) at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecCmd.doExecute(SQLServerPreparedStatement.java:350) at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:5696) at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1715) - locked <0x00000000c017af68> (a java.lang.Object) at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:180) at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:155) at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.execute(SQLServerPreparedStatement.java:332) at org.jboss.jca.adapters.jdbc.WrappedPreparedStatement.execute(WrappedPreparedStatement.java:404) at io.novaordis.microservice.util.db.jdbc.DBPreparedStatement.execute(DBPreparedStatement.java:71) at io.novaordis.microservice.util.db.sql.Procedure$Prepared.execute(Procedure.java:37) at io.novaordis.microservice.util.db.sql.Procedure$PreparedWithResult.executeQuery(Procedure.java:105) at io.novaordis.microservice.core.storage.db.DBQuery.db_query_aroundBody10(DBQuery.java:228) at io.novaordis.microservice.core.storage.db.DBQuery.db_query_aroundBody11$advice(DBQuery.java:32) at io.novaordis.microservice.core.storage.db.DBQuery.db_query(DBQuery.java:1) at io.novaordis.microservice.core.storage.db.NodeStorage.executeForCNLs(NodeStorage.java:277) at io.novaordis.microservice.core.storage.db.NodeStorage.executeForCNLs(NodeStorage.java:272) at io.novaordis.microservice.core.storage.AbstractNodeStorage.executeForCNLs(AbstractNodeStorage.java:260) at io.novaordis.microservice.core.storage.AbstractNodeStorage.executeForCNLs(AbstractNodeStorage.java:260) at io.novaordis.microservice.core.storage.AbstractNodeStorage.executeForCNLs(AbstractNodeStorage.java:260) at io.novaordis.microservice.core.storage.AbstractNodeStorage.executeForCNLs(AbstractNodeStorage.java:260) at io.novaordis.microservice.model.user.xc.UserProvider.getUserByIdentity(UserProvider.java:724) at io.novaordis.microservice.core.session2.impl.SessionManager.buildClientSession(SessionManager.java:208) at io.novaordis.microservice.core.session2.impl.SessionManager.authenticate(SessionManager.java:162) at io.novaordis.microservice.core.session2.impl.SessionManager.authenticate(SessionManager.java:73) at io.novaordis.microservice.core.session2.Session.authenticate(Session.java:282) at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:497) at io.novaordis.microservice.util.servlet.HOperation$Info.process(HOperation.java:106) at io.novaordis.microservice.util.servlet.HModule$Info.process(HModule.java:54) at io.novaordis.microservice.util.servlet.ServletRegister.process(ServletRegister.java:103) at io.novaordis.microservice.service.handler.RequestHandler.doPost(RequestHandler.java:251) at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85) at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:130) at io.undertow.websockets.jsr.JsrWebSocketFilter.doFilter(JsrWebSocketFilter.java:123) at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:60) 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:61) at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:25) at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:113) at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:56) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:25) at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:45) at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:61) at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:58) at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:70) at io.undertow.security.handlers.SecurityInitialHandler.handleRequest(SecurityInitialHandler.java:76) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:25) at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:25) at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:25) at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:240) at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:227) at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:73) at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:146) at io.undertow.server.Connectors.executeRootHandler(Connectors.java:177) at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:727) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Locked ownable synchronizers: - <0x00000000c03b4628> (a java.util.concurrent.locks.ReentrantLock$FairSync) - <0x0000000107a6d390> (a java.util.concurrent.ThreadPoolExecutor$Worker)