I am roller 4.0.1 on Tomcat 5.5_12 with Java 1.5.5 This has run succesfully, and Tomcat will run for several weeks without having to be restarted.
I had to change Java to version 6.0_18 for some new XML technology I was using, and now I find that after 3 days all 2 Gig of memor on my Linux server is taken up by Apache. Most of the space being used by non heap. I looked at all the threads, and after a few hours there are masses of BLOCKED roller threads. Hundreds of these threads blocked on pool-2-thread-303. Eventually the thread 303 finishes and then we are BLOCKED again. Any idea? Not sure what Java 6 should show this up as a problem Name: pool-2-thread-307 State: BLOCKED on org.apache.roller.weblogger.business.pings.pingqueueproces...@561044 owned by: pool-2-thread-303 Total blocked: 2 Total waited: 2 Stack trace: org.apache.roller.weblogger.business.pings.PingQueueProcessor.processQueue(PingQueueProcessor.java:79) org.apache.roller.weblogger.business.pings.PingQueueTask.runTask(PingQueueTask.java:133) org.apache.roller.weblogger.business.runnable.RollerTaskWithLeasing.run(RollerTaskWithLeasing.java:65) java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) java.util.concurrent.FutureTask.run(FutureTask.java:138) java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) java.lang.Thread.run(Thread.java:619) Name: pool-2-thread-303 State: RUNNABLE Total blocked: 2 Total waited: 0 Stack trace: java.net.PlainSocketImpl.socketConnect(Native Method) java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) - locked java.net.sockssocketi...@584ac java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) java.net.Socket.connect(Socket.java:525) java.net.Socket.connect(Socket.java:475) sun.net.NetworkClient.doConnect(NetworkClient.java:163) sun.net.www.http.HttpClient.openServer(HttpClient.java:394) sun.net.www.http.HttpClient.openServer(HttpClient.java:529) - locked sun.net.www.http.httpcli...@751bb6 sun.net.www.http.HttpClient.<init>(HttpClient.java:233) sun.net.www.http.HttpClient.New(HttpClient.java:306) sun.net.www.http.HttpClient.New(HttpClient.java:323) sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:860) sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:801) sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:726) sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:904) - locked sun.net.www.protocol.http.httpurlconnect...@ab229c org.apache.xmlrpc.client.XmlRpcSunHttpTransport.writeRequest(XmlRpcSunHttpTransport.java:65) org.apache.xmlrpc.client.XmlRpcStreamTransport.sendRequest(XmlRpcStreamTransport.java:140) org.apache.xmlrpc.client.XmlRpcHttpTransport.sendRequest(XmlRpcHttpTransport.java:94) org.apache.xmlrpc.client.XmlRpcSunHttpTransport.sendRequest(XmlRpcSunHttpTransport.java:39) org.apache.xmlrpc.client.XmlRpcClientWorker.execute(XmlRpcClientWorker.java:53) org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:166) org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:136) org.apache.xmlrpc.client.XmlRpcClient.execute(XmlRpcClient.java:125) org.apache.roller.weblogger.business.pings.WeblogUpdatePinger.sendPing(WeblogUpdatePinger.java:121) org.apache.roller.weblogger.business.pings.PingQueueProcessor.processQueueEntry(PingQueueProcessor.java:133) org.apache.roller.weblogger.business.pings.PingQueueProcessor.processQueue(PingQueueProcessor.java:103) - locked org.apache.roller.weblogger.business.pings.pingqueueproces...@561044 org.apache.roller.weblogger.business.pings.PingQueueTask.runTask(PingQueueTask.java:133) org.apache.roller.weblogger.business.runnable.RollerTaskWithLeasing.run(RollerTaskWithLeasing.java:65) java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441) java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) java.util.concurrent.FutureTask.run(FutureTask.java:138) java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) java.lang.Thread.run(Thread.java:619) -- Steve