Threads don't go back to pool!
Hi. When I obtain a jkstatus, during time, the epCount value keeps increasing. So it seams like the threads are never returned to the pool. I set the connectionTimeout to 2 (Isuppose 20 secs.) but no help. In the jk2.log I see a lot of messages like this: [Thu Sep 11 10:47:21 2003] (error ) [jk_worker_ajp13.c (416)] ajp13.service() ajpGetReply recoverable error 3 [Thu Sep 11 10:47:22 2003] (error ) [jk_service_iis.c (157)] jk_ws_service_t::head, ServerSupportFunction failed [Thu Sep 11 10:47:22 2003] (error ) [jk_handler_response.c (178)] handler.response() Error sending response[Thu Sep 11 10:47:22 2003] (error ) [jk_worker_ajp13.c (416)] ajp13.service() ajpGetReply recoverable error 3 Also, I get messages like this: [Thu Sep 11 12:43:45 2003] (error ) [jk_channel_socket.c (557)] channelSocket.receive(): Error receiving message body -1 53 [Thu Sep 11 12:43:45 2003] (error ) [jk_workerEnv.c (482)] workerEnv.processCallbacks() Error reading reply [Thu Sep 11 12:43:45 2003] (error ) [jk_worker_ajp13.c (416)] ajp13.service() ajpGetReply recoverable error 12 Thanks Victor Popiol Chief Technology Officer Co-Founder Comerxia, Inc. (formerly DoUWantIt.com) Ph: 954-862-0020
Sun JVM vs. JRockit
Info for those interested in benchmarking Tomcat + JVM. Original configuration: Windows 2000. 256 MB Ram JVM: 1.3.1 Tomcat 4.0.4 with Jasper2 Application is struts based (1.0.2) This server was upgraded to Tomcat 4.1.24 and JDK 1.4.1 After having set up everything, I realized that the performance had drop considerably. For example, a request to the same page (20 threads) before the upgrade was producing 6.5 pages/sec. After the upgrade to Tomcat 4.1.24 and JDK 1.4.1 the performance was 4.3 pages/sec. Since I was't sure what was producing this performance degradation, I started to experiment with JDBC, Connectors, etc, but no change. Only when I degraded the JVM to 1.3.1, the performance went up to 8 pages/sec. Since our next release of the application uses features from JDK 1.4.1, I could not stay in JDK 1.3.1. So I decided to try BEA's JRockit 8.1 which complies with Sun's JDK 1.4.1. The performance improved greatly to 14 pages/sec. The problem now was that I could not run Tomcat as an NT service using JRockit. The service would start, but after a few seconds, it would die abruptly. No errors reported. I saw one posting in this list with the same problem, but no solution. So I decided to install the Java Service Wrapper (http://wrapper.tanukisoftware.org/) After setting it up, I was able to run Tomcat with JRockit as an NT service. So far it looks really promising. We will conduct some more testing during the rest of the week and hopefully install this configuration in our production servers next week. Regards Victor - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: I cannot get Tomcat4.1.24 to run as a service using JRockit. Has anyone done this?
Hi Brendan. I have the same problem. Have you found a solution? Regards Victor -Original Message- From: Brendan [mailto:[EMAIL PROTECTED] Sent: Friday, May 30, 2003 3:40 PM To: Tomcat Users List; [EMAIL PROTECTED] Subject: I cannot get Tomcat4.1.24 to run as a service using JRockit. Has anyone done this? I'm fairly impressed with the JRockit8.1 JVM but I can't seem to get Tomcat to stay alive as a service when trying to subsitute in JRockit. Using tomcat.exe to install JRockit as a service seems to work, but when you start the service it quickly dies. I think it does start up briefly because the correct log files are written. There is mention of a problem using the service I think: http://wrapper.tanukisoftware.org/doc/english/release-notes.html but I'm not sure if this is the same thing as tomcat.exe. I've searched far and wide for the answer. I have tried adding JRockit's -Xnohup command line param but that doesn't seem to help. Has anyone done this successfully? thanks, Brendan - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Upgrading to new version of Tomcat
Hi. I am currently running Tomcat 4.1.12 in a production environment. I would like to upgrade to 4.1.18. Can anybody suggest the simplest, fastest way to do it? I have made considerable changes to the configuration files. I am not sure if there are any compatibility issues. Regards Victor
RE: Upgrading to new version of Tomcat
Thanks Yoav. My problem is that I want to minimize the downtime in the production system. I can try it in our test server and come up with the fastest way to do it. There are many dependencies to start fresh, including conf files, IIS redirector, etc. Regards Victor -Original Message- From: Shapira, Yoav [mailto:[EMAIL PROTECTED]] Sent: Tuesday, January 28, 2003 10:23 AM To: Tomcat Users List Subject: RE: Upgrading to new version of Tomcat Howdy, Don't simply copy over the old installation. Do a clean installation of 4.1.18. Ensure the installation is OK by checking the servlet and JSP examples, as well as the manager and admin webapps if you use them. Then make your configuration file changes (do not copy over the configuration files from the old version -- make the changes again in the new files), saving the originals under a different name so that they're available. Then deploy your app and test it to make sure it's OK. Yoav Shapira Millennium ChemInformatics -Original Message- From: Victor Popiol [mailto:[EMAIL PROTECTED]] Sent: Tuesday, January 28, 2003 10:20 AM To: [EMAIL PROTECTED] Subject: Upgrading to new version of Tomcat Hi. I am currently running Tomcat 4.1.12 in a production environment. I would like to upgrade to 4.1.18. Can anybody suggest the simplest, fastest way to do it? I have made considerable changes to the configuration files. I am not sure if there are any compatibility issues. Regards Victor -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Tomcat 4.0.4 Performance - PROBLEM
I don't think so. I saw the error inside jakarta-tomcat-4.0/jasper/src/share/org/apache/jasper/compiler/TldLocationsCache int he method processJars. Here is the source: /** * Process all the jar files contained in this web application * WEB-INF/lib directory. */ private void processJars(ServletContext ctxt) throws JasperException { Set libSet = ctxt.getResourcePaths(/WEB-INF/lib); Iterator it = libSet.iterator(); while (it.hasNext()) { String resourcePath = (String) it.next(); if (resourcePath.endsWith(.jar)) tldConfigJar(ctxt, resourcePath); } } As you can see, there is no check for libSet being not null. Although, it might be that in Tomcat 4.1.3, libSet wil be an empty collection. Regards Victor -Original Message- From: Jeff Turner [mailto:[EMAIL PROTECTED]] Sent: Thursday, June 27, 2002 9:13 PM To: Tomcat Users List Subject: Re: Tomcat 4.0.4 Performance - PROBLEM On Wed, Jun 26, 2002 at 05:37:37PM -0400, Victor Popiol wrote: Hi all. I solved my problem. Jasper was dying for not having a lib directory under each web app's web-inf. This sounds like a bug in Jasper2. Thanks for pursuing this! I just hit the same problem, and found your solution here to work. Since Jasper2 doesn't show this behaviour with Tomcat 4.1.3, I'd imagine it is a (fixed) Catalina bug, not a Jasper bug. --Jeff Thasnks Victor -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: Tomcat 4.0.4 Performance - PROBLEM
At this point, I'm trying to isolate the issue by having reinstalled tomcat vanilla, no config changes and no custom webapps added. I did move commons-collections.jar to tomcat4.0.4/common/lib, restarted tomcat and continue having the same problem. This smells like a classpath issue. But I can't figure it out. Thanks Victor -Original Message- From: Reynir Hübner [mailto:[EMAIL PROTECTED]] Sent: Wednesday, June 26, 2002 1:20 PM To: Tomcat Users List Subject: RE: Tomcat 4.0.4 Performance - PROBLEM I have an idea of what may be wrong there.. I had to move commons-collection.jar from the tc4.1.3 dist to my tc.4.0.3. common/lib you say u're running struts apps, so that may produce the possibility that you have a wrong version of this jar-file, as it is distributed with struts too. just an idea. hope it helps [EMAIL PROTECTED] -Original Message- From: Victor Popiol [mailto:[EMAIL PROTECTED]] Sent: 26. júní 2002 17:22 To: Tomcat Users List Subject: RE: Tomcat 4.0.4 Performance - PROBLEM I just reinstalled tomcat 4.0.4, tested it, it worked, copied jasper2 jars from tomcat 4.1.3 to tomcat/lib, copied ant.jar from tomcat 4.1.3 to tomcat/lib and get the same JSP problems. My question is, where did you get your jasper2 jars from? Again my problem is that I can not get the sample jsps to work. I get the error below. I can't get this to work! Thanks Victor -Original Message- From: Peter Lin [mailto:[EMAIL PROTECTED]] Sent: Wednesday, June 26, 2002 11:31 AM To: Tomcat Users List Subject: RE: Tomcat 4.0.4 Performance - PROBLEM the only thing different is I have jaxp-api.jar which is uused by JSTL. I don't have classes12 since I don't use Oracle. check your web.xml file under examples/WEB-INF/ it could be corrupted or wrong for some unknown reason. peter --- Victor Popiol [EMAIL PROTECTED] wrote: It does recreate the examples folder but it does not create any content inside the folder. I made shure that tomcat/lib contains jasper-compiler.jar, jasper-runtime.jar and ant.jar plus naming-factory.jar and still doesn't work. What do you have in your tomcat/common/lib? I have the following: activation.jar classes12_01.jar -- Oracle jdbc2_0-stdext.jar jndi.jar jta-spec1_0_1.jar mail.jar naming-common.jar naming-resources.jar servlet.jar tyrex-0.9.7.0.jar tyrex.license xerces.jar Thanks Victor -Original Message- From: peter lin [mailto:[EMAIL PROTECTED]] Sent: Wednesday, June 26, 2002 11:16 AM To: Tomcat Users List Subject: Re: Tomcat 4.0.4 Performance - PROBLEM victor, do you see tomcat re-create the examples folder under work/localhost/? I only have jasper-compiler.jar, jasper-runtime.jar and ant.jar in my tomcat/lib/ directory. other than that I didn't use any other 4.1.5 jars. I hope that helps. peter Victor Popiol wrote: That doesn't seem to be the problem I'm experiencing, though. I stopped tomcat, deleted the work folder, restarted it and still get the error running the example jsps. I am very puzzled by this since our web application, which uses struts, works perfectly. Thanks Victor -Original Message- From: peter lin [mailto:[EMAIL PROTECTED]] Sent: Wednesday, June 26, 2002 11:06 AM To: Tomcat Users List Subject: Re: Tomcat 4.0.4 Performance - PROBLEM hi victor, there is a bug, which is already patched I believe. basically if you delete the working folder while tomcat is running, jasper2 doesn't recompile the dependent pages. you can get around that by restarting, or creating the missing folder manually. it should be fixed with the next alpha release of 4.1.6. peter Victor Popiol wrote: I did delete the working folders. This is how I set up Jasper2 on Tomcat 4.0.4: - Copied the following files to $catalina_home$/lib: ant.jar, commos-collections.jar, commons-logging.jar, jasper-compiler.jar, jasper-runtime.jar - Also tried as an alternative to move those files to $catalina_home$/common/lib to no avail. Is that how you set it up? Thanks Victor -Original Message- From: peter lin [mailto:[EMAIL PROTECTED]] Sent: Wednesday, June 26, 2002 10:50 AM To: Tomcat Users List Subject: Re: Tomcat 4.0.4 Performance - PROBLEM hi victor, it worked fine for me with tomcat 4.0.3 and jasper2 on win2k. It looks like it couldn't load something. Did you delete the working folders maybe? Here is the generated file I got. peter package org.apache.jsp; import javax.servlet.*; import javax.servlet.http.*; import javax.servlet.jsp.*; import org.apache.jasper.runtime.*; public class date$jsp extends
RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta
Tried it. No help. Tomcat 4.1.3 keeps dying after a while of being stressed. Same death: Out of Memory. Regards Victor -Original Message- From: Shapira, Yoav [mailto:[EMAIL PROTECTED]] Sent: Friday, June 21, 2002 11:46 AM To: Tomcat Users List Subject: RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta Hi, Did you try profiling with and without the incremental garbage collector? (-Xincgc) I'd be very interested in the comparison. Yoav Shapira Millennium ChemInformatics -Original Message- From: Victor Popiol [mailto:[EMAIL PROTECTED]] Sent: Friday, June 21, 2002 11:44 AM To: Tomcat Users List Subject: RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta More details: Server Compaq Single Processor 512 MB RAM Windows 2K Tomcat - Tomcat 4.1.3 Beta, binary distribution running as a service and using Tomcat 4.0's isapi_redirector.dll to interface with IIS - Using Ajp3Processor with IIS - Runs as an NT Service - JVM parametes: -Xrs -Xincgc -Xms128m -Xmx256m Application - Struts - Lots of JSP's using I18N and custom tags - Database server is Oracle 8.1.7 - # requests/day: 7,750 Thanks Victor -Original Message- From: Remy Maucherat [mailto:[EMAIL PROTECTED]] Sent: Friday, June 21, 2002 9:46 AM To: Tomcat Users List Subject: Re: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta Victor Popiol wrote: I installed Tomcat 4.1.3 beta. Took a while to configure because the hidden issue with the user vs username parameter in the datasource definition. After it has been running for a day, it died. Looking at the logs I found the following: java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available Any idea of components leaking memory? Without any additional details, I can't really help. A bug which could cause this has been fixed after 4.1.3: http://nagoya.apache.org/bugzilla/show_bug.cgi?id=9715 This bug was also present in TC 4.0.x, though. Remy -- To unsubscribe, e-mail: mailto:tomcat-user- [EMAIL PROTECTED] For additional commands, e-mail: mailto:tomcat-user- [EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:tomcat-user- [EMAIL PROTECTED] For additional commands, e-mail: mailto:tomcat-user- [EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta
Yoav, I have played with the memory parameters a lot. More memory will give it a longer life before the Out of Memory error happens. There is definetly a memory leak somewhere. From what I have read, it looks like it might be inside tomcat. Especially because we could not make JRun die under the same stress and tests. Regards Victor -Original Message- From: Shapira, Yoav [mailto:[EMAIL PROTECTED]] Sent: Friday, June 21, 2002 10:47 AM To: Tomcat Users List Subject: RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta Howdy, You're getting that because you need more memory - java by default will run A good start now that you have something running (at least up to the point it crashes with the OutOfMemory error) would be to 1) Set -Xmx at something much higher than you should need, e.g. -Xmx2048m 2) Run your app with a profiler. See where memory gets allocated. See how much memory you really need. Gradually trim down -Xmx until you reach a point you have enough memory to handle your peaks, and then some for safety. Welcome to the fun exciting world of java heap performance tuning ;) Yoav Shapira Millennium ChemInformatics -Original Message- From: Remy Maucherat [mailto:[EMAIL PROTECTED]] Sent: Friday, June 21, 2002 9:46 AM To: Tomcat Users List Subject: Re: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta Victor Popiol wrote: I installed Tomcat 4.1.3 beta. Took a while to configure because the hidden issue with the user vs username parameter in the datasource definition. After it has been running for a day, it died. Looking at the logs I found the following: java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available Any idea of components leaking memory? Without any additional details, I can't really help. A bug which could cause this has been fixed after 4.1.3: http://nagoya.apache.org/bugzilla/show_bug.cgi?id=9715 This bug was also present in TC 4.0.x, though. Remy -- To unsubscribe, e-mail: mailto:tomcat-user- [EMAIL PROTECTED] For additional commands, e-mail: mailto:tomcat-user- [EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta
Orders of magnitude better. -Original Message- From: William Au [mailto:[EMAIL PROTECTED]] Sent: Friday, June 21, 2002 9:38 AM To: Tomcat Users List Subject: Re: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta So how is the performance of Tomcat 4.1.3 comparing to 4.0? Bill Shapira, Yoav wrote: Howdy, I know you already solved the problem (was userid). As an aside, it's a bad idea to unpack 3rd party jars. You probably want to rename classes12.zip to classes12.jar so tomcat will pick it up. Yoav Shapira Millennium ChemInformatics -Original Message- From: Victor Popiol [mailto:[EMAIL PROTECTED]] Sent: Thursday, June 20, 2002 4:24 AM To: Tomcat Users List Subject: RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta Hi. I installed Tomcat 4.1.3 and deployed my application. But I consistently get en error trying to connect to our database. This error only happens in Tomcat 4.1.3. The database is Oracle 8.1.7 and I expanded the classes from the classes12.zip JDBC distributable (as I had done on Tomcat 4.03). The error happens when trying to open the connection. To isolate the issue, I wrote a small jsp page that exercise the data source to get the conection. Here it is: %@ page contentType=text/html import=javax.naming.*,java.sql.*,javax.sql.* % html body % System.out.println(StartingBR); Context initCtx = new InitialContext(); Context envCtx = (Context) initCtx.lookup(java:comp/env); DataSource ds = (DataSource) envCtx.lookup(jdbc/duwi); if (ds != null) { System.out.println(Data Source is not nullBR); Connection conn = ds.getConnection(); conn.close(); } % Ready! /body /html The execution of this jsp throwas the following exception: org.apache.jasper.JasperException at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.j ava: 232) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:289 ) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applic atio nFilterChain.java:247) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFil terC hain.java:193) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperVal ve.j ava:260) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:646) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java: 483) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextVal ve.j ava:191) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:646) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java: 483) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:23 49) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.jav a:18 0) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:646) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherV alve .java:170) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:644) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.jav a:17 1) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:644) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java: 483) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve .jav a:174) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:646) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java: 483) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:4 05) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process Conn ection(Http11Protocol.java:376) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:5 08) at org.apache.tomcat.util.threads.ThreadPool
RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta
More details: Server Compaq Single Processor 512 MB RAM Windows 2K Tomcat - Tomcat 4.1.3 Beta, binary distribution running as a service and using Tomcat 4.0's isapi_redirector.dll to interface with IIS - Using Ajp3Processor with IIS - Runs as an NT Service - JVM parametes: -Xrs -Xincgc -Xms128m -Xmx256m Application - Struts - Lots of JSP's using I18N and custom tags - Database server is Oracle 8.1.7 - # requests/day: 7,750 Thanks Victor -Original Message- From: Remy Maucherat [mailto:[EMAIL PROTECTED]] Sent: Friday, June 21, 2002 9:46 AM To: Tomcat Users List Subject: Re: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta Victor Popiol wrote: I installed Tomcat 4.1.3 beta. Took a while to configure because the hidden issue with the user vs username parameter in the datasource definition. After it has been running for a day, it died. Looking at the logs I found the following: java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available Any idea of components leaking memory? Without any additional details, I can't really help. A bug which could cause this has been fixed after 4.1.3: http://nagoya.apache.org/bugzilla/show_bug.cgi?id=9715 This bug was also present in TC 4.0.x, though. Remy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta
It also helped us when we increased the memory. Right now, we have scheduled a daily service restart (this is in production :-( ). I'll be looking forward to your feedback regarding 4.1.5 Regards Victor -Original Message- From: Reynir Hübner [mailto:[EMAIL PROTECTED]] Sent: Friday, June 21, 2002 11:43 AM To: Tomcat Users List Subject: RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta I had the same problem, increased memory up to 512 and got rid of it. But it seemd kind of obvious to me that tomcat 4.1.3 was taking way more memory than 4.0.3, for example an application that normally takes 40 - 60 mb was taking 400mb of memory under load, and it did not seem to release the memory unless I killed the java.exe process. All my problems came as I was stress-testing the application. I'm testing version 4.1.5 right now, I'll let you know if there is any difference. -reynir -Original Message- From: Victor Popiol [mailto:[EMAIL PROTECTED]] Sent: 21. júní 2002 15:44 To: Tomcat Users List Subject: RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta More details: Server Compaq Single Processor 512 MB RAM Windows 2K Tomcat - Tomcat 4.1.3 Beta, binary distribution running as a service and using Tomcat 4.0's isapi_redirector.dll to interface with IIS - Using Ajp3Processor with IIS - Runs as an NT Service - JVM parametes: -Xrs -Xincgc -Xms128m -Xmx256m Application - Struts - Lots of JSP's using I18N and custom tags - Database server is Oracle 8.1.7 - # requests/day: 7,750 Thanks Victor -Original Message- From: Remy Maucherat [mailto:[EMAIL PROTECTED]] Sent: Friday, June 21, 2002 9:46 AM To: Tomcat Users List Subject: Re: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta Victor Popiol wrote: I installed Tomcat 4.1.3 beta. Took a while to configure because the hidden issue with the user vs username parameter in the datasource definition. After it has been running for a day, it died. Looking at the logs I found the following: java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available Any idea of components leaking memory? Without any additional details, I can't really help. A bug which could cause this has been fixed after 4.1.3: http://nagoya.apache.org/bugzilla/show_bug.cgi?id=9715 This bug was also present in TC 4.0.x, though. Remy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta
My initial suspition was Jasper. But there have been less and less JSP compilations after the site was deployed. One thing I wanted to try, to rule out Jasper, was to precompile all the JSP's. But I can't figure out how to do that. I guess I'll have to write an ant build file using the jsp compilation task. Also, is there a way to query tomcat for resources held? I.E. JDBC connections. Could there be something in our code causing these leaks in a way that the container would run out of memory? We have tried the application on JRun 4 in our test lab and have not been able to run out of memory yet. Thanks Victor -Original Message- From: Remy Maucherat [mailto:[EMAIL PROTECTED]] Sent: Friday, June 21, 2002 12:09 PM To: Tomcat Users List Subject: Re: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta Victor Popiol wrote: It also helped us when we increased the memory. Right now, we have scheduled a daily service restart (this is in production :-( ). I'll be looking forward to your feedback regarding 4.1.5 Since apparently you are not using many static pages, this would seem to rule out the bug which got fixed. Jasper 2 introduces pooling for a lot of objects which previously weren't pooled, so it is a possible cause. Maybe there is a problem with the size of those pools, although I didn't notice anything completely wrong in the code. This will need to be investigated. Overall, 4.1.x should use a little bit more memory than 4.0.x, but there shouldn't be a huge difference. Note: 4.1.5 introduces more pooling (rather than less), like for tag instances for example, but those pools have limits on their size. Remy -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta
Hi Yoav. I tried that during troubleshooting and didn't help because of the userid issue. I will comply. Thanks Victor -Original Message- From: Shapira, Yoav [mailto:[EMAIL PROTECTED]] Sent: Thursday, June 20, 2002 10:08 AM To: Tomcat Users List Subject: RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta Howdy, I know you already solved the problem (was userid). As an aside, it's a bad idea to unpack 3rd party jars. You probably want to rename classes12.zip to classes12.jar so tomcat will pick it up. Yoav Shapira Millennium ChemInformatics -Original Message- From: Victor Popiol [mailto:[EMAIL PROTECTED]] Sent: Thursday, June 20, 2002 4:24 AM To: Tomcat Users List Subject: RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta Hi. I installed Tomcat 4.1.3 and deployed my application. But I consistently get en error trying to connect to our database. This error only happens in Tomcat 4.1.3. The database is Oracle 8.1.7 and I expanded the classes from the classes12.zip JDBC distributable (as I had done on Tomcat 4.03). The error happens when trying to open the connection. To isolate the issue, I wrote a small jsp page that exercise the data source to get the conection. Here it is: %@ page contentType=text/html import=javax.naming.*,java.sql.*,javax.sql.* % html body % System.out.println(StartingBR); Context initCtx = new InitialContext(); Context envCtx = (Context) initCtx.lookup(java:comp/env); DataSource ds = (DataSource) envCtx.lookup(jdbc/duwi); if (ds != null) { System.out.println(Data Source is not nullBR); Connection conn = ds.getConnection(); conn.close(); } % Ready! /body /html The execution of this jsp throwas the following exception: org.apache.jasper.JasperException at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.j ava: 232) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:289 ) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applic atio nFilterChain.java:247) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFil terC hain.java:193) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperVal ve.j ava:260) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:646) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java: 483) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextVal ve.j ava:191) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:646) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java: 483) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:23 49) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.jav a:18 0) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:646) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherV alve .java:170) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:644) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.jav a:17 1) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:644) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java: 483) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve .jav a:174) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:646) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java: 483) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:4 05) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process Conn ection(Http11Protocol.java:376) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:5 08) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPoo l.ja va:518) at java.lang.Thread.run(Thread.java:479) root cause java.lang.NullPointerException
RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta
I installed Tomcat 4.1.3 beta. Took a while to configure because the hidden issue with the user vs username parameter in the datasource definition. After it has been running for a day, it died. Looking at the logs I found the following: java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available java.lang.OutOfMemoryError no stack trace available Any idea of components leaking memory? Thanks Victor -Original Message- From: Shapira, Yoav [mailto:[EMAIL PROTECTED]] Sent: Thursday, June 20, 2002 10:08 AM To: Tomcat Users List Subject: RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta Howdy, I know you already solved the problem (was userid). As an aside, it's a bad idea to unpack 3rd party jars. You probably want to rename classes12.zip to classes12.jar so tomcat will pick it up. Yoav Shapira Millennium ChemInformatics -Original Message- From: Victor Popiol [mailto:[EMAIL PROTECTED]] Sent: Thursday, June 20, 2002 4:24 AM To: Tomcat Users List Subject: RE: Tomcat 4 performance issues - Trying Tomcat 4.1.3 Beta Hi. I installed Tomcat 4.1.3 and deployed my application. But I consistently get en error trying to connect to our database. This error only happens in Tomcat 4.1.3. The database is Oracle 8.1.7 and I expanded the classes from the classes12.zip JDBC distributable (as I had done on Tomcat 4.03). The error happens when trying to open the connection. To isolate the issue, I wrote a small jsp page that exercise the data source to get the conection. Here it is: %@ page contentType=text/html import=javax.naming.*,java.sql.*,javax.sql.* % html body % System.out.println(StartingBR); Context initCtx = new InitialContext(); Context envCtx = (Context) initCtx.lookup(java:comp/env); DataSource ds = (DataSource) envCtx.lookup(jdbc/duwi); if (ds != null) { System.out.println(Data Source is not nullBR); Connection conn = ds.getConnection(); conn.close(); } % Ready! /body /html The execution of this jsp throwas the following exception: org.apache.jasper.JasperException at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.j ava: 232) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:289 ) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applic atio nFilterChain.java:247) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFil terC hain.java:193) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperVal ve.j ava:260) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:646) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java: 483) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextVal ve.j ava:191) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:646) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java: 483) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:23 49) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.jav a:18 0) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:646) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherV alve .java:170) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:644) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.jav a:17 1) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:644) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java: 483) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve .jav a:174) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext. invo keNext(StandardPipeline.java:646) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java: 483) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223) at org.apache.coyote.http11.Http11Processor.process