Wildfire 3.2.2 (Enterprise plugin)+ http-bind + apapche mod_proxy + JsJac + plain auth
OS: Suse 2.6.11.4-20a-smp, with 4G RAM, 4 DualCode CPU.
Wildfire http-bind not responding to apache with ~1100 concurent users.
-Xms512m -Xmx1536m
xmpp.httpbind.client.requests.polling = 0
xmpp.httpbind.client.requests.wait = 60
Before crach i found some “dispatch failed” (posibble jetty error) in wildfire warn.log, 1263 “pool-wildfire(n)” thread.
Some errors in warn.log (before crash)
2007.03.09 00:55:53 Error for /http-bind/
java.lang.InternalError: Could not locate connection: 786156
at org.jivesoftware.wildfire.http.HttpSession.getResponse(HttpSession.java:343)
at org.jivesoftware.wildfire.http.HttpBindServlet.handleSessionRequest(HttpBindSer vlet.java:177)
at org.jivesoftware.wildfire.http.HttpBindServlet.doPost(HttpBindServlet.java:105)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:367)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391)
at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollect ion.java:146)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:285)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)
at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:765 )
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:627)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)
2007.03.09 00:55:54 Error for /http-bind/
java.lang.InternalError: Could not locate connection: 786156
at org.jivesoftware.wildfire.http.HttpSession.getResponse(HttpSession.java:343)
at org.jivesoftware.wildfire.http.HttpBindServlet.handleSessionRequest(HttpBindSer vlet.java:177)
at org.jivesoftware.wildfire.http.HttpBindServlet.doPost(HttpBindServlet.java:105)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:367)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391)
at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollect ion.java:146)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:285)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)
at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:765 )
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:627)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)
2007.03.09 00:56:00 Client provided invalid session: 7ba17633.
2007.03.09 00:56:10 Client provided invalid session: f6fca7ec.
2007.03.09 00:56:11 Request 564701 > 564699, ending session.
2007.03.09 00:56:36 Error for /http-bind/
java.lang.InternalError: Could not locate connection: 772905
at org.jivesoftware.wildfire.http.HttpSession.getResponse(HttpSession.java:343)
at org.jivesoftware.wildfire.http.HttpBindServlet.handleSessionRequest(HttpBindSer vlet.java:177)
at org.jivesoftware.wildfire.http.HttpBindServlet.doPost(HttpBindServlet.java:105)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:367)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391)
at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollect ion.java:146)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:285)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)
at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:765 )
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:627)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329)
at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)
2007.03.09 00:56:53 Connection timed out: 426093. Request 426093 exceded response time from server of 60 seconds.
2007.03.09 00:57:07 Connection timed out: 564700. Request 564700 exceded response time from server of 60 seconds.
2007.03.09 00:57:23 Deliverable unavailable for 786163
2007.03.09 00:58:24 dispatch failed!
“Found 3 deadlocks.” in thread dump.
Found one Java-level deadlock:
=============================
“pool-wildfire1259”:
waiting to lock monitor 0x080633fc (object 0x4bf810d8, a org.jivesoftware.wildfire.http.HttpSession),
which is held by “btpool0-282”
“btpool0-282”:
waiting to lock monitor 0x0865b8f8 (object 0x4b1d5100, a org.jivesoftware.wildfire.http.HttpSession),
which is held by “btpool0-133”
“btpool0-133”:
waiting to lock monitor 0x0865a444 (object 0x4a337010, a org.jivesoftware.wildfire.http.HttpSession),
which is held by “btpool0-426”
“btpool0-426”:
waiting to lock monitor 0x08658c70 (object 0x4b0610f0, a org.jivesoftware.wildfire.http.HttpSession),
which is held by “btpool0-76”
“btpool0-76”:
waiting to lock monitor 0x0865924c (object 0x4b001780, a org.jivesoftware.wildfire.http.HttpSession),
which is held by “btpool0-434”
“btpool0-434”:
waiting to lock monitor 0x08659314 (object 0x4ae7f938, a org.jivesoftware.wildfire.http.HttpSession),
which is held by “btpool0-341”
“btpool0-341”:
waiting to lock monitor 0x0865924c (object 0x4b001780, a org.jivesoftware.wildfire.http.HttpSession),
which is held by “btpool0-434”
I have a full thread dump, how post it?
All “pool-wildfire” thread blocked at HttpSession.getLastActivity
“pool-wildfire1032” daemon prio=10 tid=0x70e60c00 nid=0x7fb9 waiting for monitor entry (0x85a28000…0x85a28ea0)
java.lang.Thread.State: BLOCKED (on object monitor)
at org.jivesoftware.wildfire.http.HttpSession.getLastActivity(HttpSession.java:314 )
- waiting to lock <0x4bf810d8> (a org.jivesoftware.wildfire.http.HttpSession)
at org.jivesoftware.wildfire.http.HttpSessionManager$HttpSessionReaper.run(HttpSes sionManager.java:285)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Apache error log after crash:
(Fri Mar 09 01:00:37 2007) (error) (110)Connection timed out: proxy: HTTP: attempt to connect to 192.168.20.32:8080 (xxx) failed
(Fri Mar 09 01:00:37 2007) (error) ap_proxy_connect_backend disabling worker for (xxx)
(Fri Mar 09 01:00:37 2007) (error) (110)Connection timed out: proxy: HTTP: attempt to connect to 192.168.20.32:8080 (xxx) failed
…
and some
(Fri Mar 09 01:10:58 2007) (error) (client 90.10.39.110) proxy: error reading status line from remote server xxx
(Fri Mar 09 01:10:58 2007) (error) (client 90.10.39.110) proxy: Error reading from remote server returned by /bind
before crash (possible apache bug).
… and sorry for my english.
Message was edited by: ikan