Coding In Paradise: Tomcat JSP Precompilation is SLOW!!

2005-01-07 Thread Kevin A. Burton

 The entire JSP compilation process, using Ant and the jasper2 ant 
task, takes about 30 minutes! This is far too long. I mean, there are 
systems that are doing more than just compiling text, such as advanced 
3D graphics and speech recognition, that are far faster than Tomcat's 
JSP compilation.

Fun!  Why isn't fixing this a huge priority!?
http://codinginparadise.org/weblog/2005/01/tomcat-jsp-precompilation-is-slow.html
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412



Re: Coding In Paradise: Tomcat JSP Precompilation is SLOW!!

2005-01-07 Thread Kevin A. Burton
Julius Davies wrote:
Why not hit every URL with curl or wget before deploying and include
Tomcat's work directory with your deployment?  How does that compare
for speed? 

 

We've already tried that... First off its the same speed... second there 
are horrible out of memory issues with the JspPrecompiler.

Its a lovely piece of code!
Also, have you tried giving Ant some extra heap to play with?  I think
this is how (on unix):
export ANT_OPTS=-Xms256M -Xmx256M
 

How would that help us?  Won't it just run out of memory if heap were an 
issue?

Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: how to tell if Jikes is being run??

2004-12-31 Thread Kevin A. Burton
Peter Smith wrote:
I gleaned info from this mailing list archive and other websites and configured 
my Tomcat to use the Jikes compiler instead of the one from the Sun JDK.  
Nothing seems faster, so I must've done something wrong.  Question is - is this 
the only way to tell if I'm actually using Jikes - to see if I'm 
running/compiling faster??
 

Yes...
1. remove the work directory
2. Start to compile a page
3. pgrep -f jikes
If it shows up then its working.
If that doesn't work you'll have to do a killall -3 java and look at the 
stack trace to make sure the right compiler is being used.

In my experience jikes doesn't speed up page compilation much.  The 
problem is that jasper is amazingly slow. 

Precompile your JSPs anyway.  You'll be amazed at how LONG it takes and 
then thank yourself for not putting your customers through this torture.

Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


JspC to use jikes for speed improvement?

2004-12-16 Thread Kevin A. Burton
We're using JspC to precompile our webapp to speed up application 
deployment and reduce memory on the server.  Right now it takes FOREVER 
to compile.  Currently the entire build of our app takes 30 seconds but 
JspC takes 1.5 hours.!  Its not like we have that many JSPs either.

So I have a few questions.
1.  Is there anything obvious I can do to speed it up.
2. Is it possible to get JspC to use jikes?  Looking at the source I'm 
pretty much not sure. Its possible but I can find no way to set the 
Compiler to use AntCompiler and thus jikes support.  It just insists on 
using JDTool.. (which I haven't benchmarked but am pretty sure its not 
faster than jikes.

Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: Tomcat synchronous shutdown?

2004-12-09 Thread Kevin A. Burton
Shapira, Yoav wrote:
The semantic of restart only if you feel like it is useless IMHO.  You
either want a restart or you don't.  If there's an error serious enough
to prevent shutdown, you want to look into it anyways.  But since your
use-case apparently calls for this functionality, go ahead, do it, and
have fun ;)  I'd probably -1 any proposed patches as useless bloat.
 

It isn't like this functionaliy is new. Most major daemons in existance 
implement this. Apache, MySQL, Postgres, Sendmail, I could go on.

In fact Tomcat is the odd man out on this guy. Every single daemon on my 
Unix box implements this version of semantic control except Tomcat.

The major issue is for scripts. Even most major Linux distribution tools 
like the sysv init tools under KDE assume that scripts can do shutdown 
correctly or return an error code.

Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Tomcat synchronous shutdown?

2004-12-08 Thread Kevin A. Burton
Currently Tomcats shutdown model is to politely request that the 
server shutdown.

Most of the time Tomcat is friendly and will shutdown as requested but 
sometimes it won't do as its told and run forever.  This seems to happen 
if a shutdown hook has problems or it runs out of memory.  This is 
happening to us now that we're on 5.5.

Is there a way to:
1. Make Tomcat's ./bin/shutdown.sh  script block until it shutdown
2. Return a status code about the shutdown success
3. Optionally terminate the java process with a -9 if it takes too long
The same should happen for Tomcat startup btw...
Thoughts?
Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: Tomcat synchronous shutdown?

2004-12-08 Thread Kevin A. Burton
Shapira, Yoav wrote:
Hi,
The Tomcat shutdown script provides support for a -force option, which
does a kill -9 on the process ID after the normal shutdown.
If you want something beyond that, do it yourself.  Accounting for
reasons like an OOME or your own code spawning non-daemon threads is
outside Tomcat's scope.
If it takes too long is a vague criterion at best, as conditions and
use-cases wildly differ.
 

Too long can be defined in a configuration file.
The major problem is that Tomcat can't do a 'restart'. For example with 
mysql I can do a /etc/init.d/mysql restart and it will block until stop 
runs... then start. If stop returns an errorcode then it won't attempt 
to startup MySQL again.

Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Tomcat DEBUG log4j and 5.5.4?

2004-12-03 Thread Kevin A. Burton
http://jakarta.apache.org/tomcat/tomcat-5.5-doc/logging.html
Does this actually work?  I followed the steps for log4j and it won't 
work at all. I still get the standard logging.  Are there any properties 
settings I can use to get more info on the bootstrap process?

Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Does Tomcat 5.5 support jikes?

2004-12-02 Thread Kevin A. Burton
This isn't fun:
  
!--  
--
  !-- If you wish to use Jikes to compile JSP 
pages:   --
  !--   Set the init parameter compiler to jikes.  
Define  --
  !--   the property -Dbuild.compiler.emacs=true when starting 
Tomcat--
  !--   by adding the above to your CATALINA_OPTS environment 
variable.--
  !--   If you get an error reporting that jikes can't use UTF8 
encoding,  --
  !--   try setting the init parameter javaEncoding to 
ISO-8859-1. --

But I follow these instructions (as I did with Tomcat 5.0) and Tomcat 
5.5 STILL uses jdtool!

Any thoughts?
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: Does Tomcat 5.5 support jikes?

2004-12-02 Thread Kevin A. Burton
Kevin A. Burton wrote:
This isn't fun:
  
!--  
--
  !-- If you wish to use Jikes to compile JSP 
pages:   --
  !--   Set the init parameter compiler to jikes.  
Define  --
  !--   the property -Dbuild.compiler.emacs=true when starting 
Tomcat--
  !--   by adding the above to your CATALINA_OPTS environment 
variable.--
  !--   If you get an error reporting that jikes can't use UTF8 
encoding,  --
  !--   try setting the init parameter javaEncoding to 
ISO-8859-1. --

But I follow these instructions (as I did with Tomcat 5.0) and Tomcat 
5.5 STILL uses jdtool!

Any thoughts?
It looks like the web.xml configuration is lying about a number of 
things.  Tomcat 5.5 ONLY used the JDTCompiler and will never use the 
AntCompiler.  Theres not even a way to tell it to use one or the other.

Thus fork, jikes, etc don't matter anymore.
Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Tomcat 5.5 with DailyRollingFileAppender and DEBUG

2004-12-02 Thread Kevin A. Burton
Has anyone been able to configure Tomcat with a custom log4j config?  
For the LIFE of me I can't figure this out.

1.  I want to use a DailyRollingFileAppender so that I don't get 1TB log 
files ;)

2. I want to enable DEBUG for a couple of internal Tomcat classes.
Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


ClassCastException in org.apache.jasper.compiler.TagLibraryInfoImpl (Tomcat5.5)

2004-11-28 Thread Kevin A. Burton
Whats up with this?
java.lang.ClassCastException

org.apache.jasper.compiler.TagLibraryInfoImpl.createTagInfo(TagLibraryInfoImpl.java:420)

org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImpl.java:248)

org.apache.jasper.compiler.TagLibraryInfoImpl.init(TagLibraryInfoImpl.java:162)
org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:418)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:483)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1539)
org.apache.jasper.compiler.Parser.parse(Parser.java:126)

org.apache.jasper.compiler.ParserController.doParse(ParserController.java:211)

org.apache.jasper.compiler.ParserController.parse(ParserController.java:100)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:146)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)

org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:556)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:296)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
Heres a copy of the jsp I'm trying to compile:
The JSP is just a huge list of taglib definitions:
%@ taglib prefix=image  uri=http://dev.sofari.com/taglibs/image/; %
%@ taglib prefix=c  uri=http://java.sun.com/jsp/jstl/core; %
%@ taglib prefix=fn uri=http://java.sun.com/jsp/jstl/functions; %
%@ taglib prefix=fmturi=http://java.sun.com/jsp/jstl/fmt; %
As an example... I can provide you with the full JSP file.
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: ClassCastException in org.apache.jasper.compiler.TagLibraryInfoImpl (Tomcat5.5)

2004-11-28 Thread Kevin A. Burton
Kevin A. Burton wrote:
Whats up with this?
java.lang.ClassCastException
org.apache.jasper.compiler.TagLibraryInfoImpl.createTagInfo(TagLibraryInfoImpl.java:420) 

org.apache.jasper.compiler.TagLibraryInfoImpl.parseTLD(TagLibraryInfoImpl.java:248) 


If I reduce my webapp down to just this:
%@ taglib prefix=c uri=http://java.sun.com/jsp/jstl/core; %

Then I get:
org.apache.jasper.JasperException: Unable to read TLD META-INF/c.tld 
from JAR file 
file:/usr/local/jakarta-tomcat-5.5.4/webapps/rojo/ROOT/WEB-INF/lib/standard.jar: 
org.apache.jasper.JasperException: Failed to load or instantiate 
TagLibraryValidator class: org.apache.taglibs.standard.tlv.JstlCoreTLV
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:50)
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:179)
org.apache.jasper.compiler.TagLibraryInfoImpl.init(TagLibraryInfoImpl.java:181)
org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:418)
org.apache.jasper.compiler.Parser.parseDirective(Parser.java:483)
org.apache.jasper.compiler.Parser.parseElements(Parser.java:1539)
org.apache.jasper.compiler.Parser.parse(Parser.java:126)
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:211)
org.apache.jasper.compiler.ParserController.parse(ParserController.java:100)
org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:146)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:556)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:296)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
But the standard.jar I'm using is the SAME one from Tomcat 5.5 and even 
the md5sum is the same (so its not corrupt).

The insane parse is that everytime I reload the page I get a diff error 
(FUN!)

java.lang.ClassNotFoundException: org.apache.jsp.pagelet.taglibs_jsp
java.net.URLClassLoader$1.run(URLClassLoader.java:199)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(URLClassLoader.java:187)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:156)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:69)

org.apache.jasper.JspCompilationContext.load(JspCompilationContext.java:589)

org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:137)

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:308)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
BTW. Throughout this ENTIRE process Tomcat has been swallowing the real 
error. Not very professional :-/ Makes me wonder what other fun little 
secrets Tomcat has in store for me in the future.

Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: OutOfMemory errors compiling JSPs on 5.0.16 and 5.5.4

2004-11-15 Thread Kevin A. Burton
Remy Maucherat wrote:
On Sat, 13 Nov 2004 17:30:38 -0800, Kevin A. Burton
[EMAIL PROTECTED] wrote:
 

Remy Maucherat wrote:
   

On Fri, 12 Nov 2004 17:17:28 -0800, Kevin A. Burton
[EMAIL PROTECTED] wrote:
 

- For all my JSPs I fetch them with the URL foo.jsp?jsp_precompile=true
to trigger precompilation
   

How many JSPs must be compiled to cause problems ?
 

About 50 or so... it changes every time.   Sometimes I have to trigger a
precompile twice.
   

I don't quite understand in which cases problems occur:
- if you ?jsp_precompile=true 50 times for the same JSP ?
- if you ?jsp_precompile=true for 50 different JSPs ?
- if you access normally 50 different JSPs (triggering compilation for
each one) ?
I would understand from your description only the second one is an
issue. Can you confirm this ?
 

Yes... I use #2
I trigger a ?jsp_precompile=true for each one of my JSPs and we have 
around 300-400 ...

Around 100 or so it will run out of memory.
Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412



Re: OutOfMemory errors compiling JSPs on 5.0.16 and 5.5.4

2004-11-15 Thread Kevin A. Burton
Dale, Matt wrote:
I've not been following this thread but my guess would be that you are running out of space in the permanent generation of the heap. Get a hold of jvmstat from sun and run visualgc on your JVM, it should become obvious then which pool is running out of space.
 

God!  How pathetic is this:
http://java.sun.com/performance/jvmstat/#Download
This distribution of the jvmstat tools requires J2SE 5.0 with the 
HotSpot JVM.
So now I have to upgrade all our VMs to JDK 5.0 even though earlier 
versions of jvmstat supported JDK 1.4. 

Brilliant... who's the marketing genius that though of this one!?
... and of course they don't link to archival versions.
The SUN  has set my friends ;-)
Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Re: OutOfMemory errors compiling JSPs on 5.0.16 and 5.5.4

2004-11-13 Thread Kevin A. Burton
Remy Maucherat wrote:
On Fri, 12 Nov 2004 17:17:28 -0800, Kevin A. Burton
[EMAIL PROTECTED] wrote:
 

- For all my JSPs I fetch them with the URL foo.jsp?jsp_precompile=true
to trigger precompilation
   

How many JSPs must be compiled to cause problems ?
 

About 50 or so... it changes every time.   Sometimes I have to trigger a 
precompile twice.

Note that the VM still shows plenty of memory so I'm not sure what the
heck is going on here.  I also looked at our file handles and they seem
fine too.
   

In that kind of situation, a profiler will have to be used. All I can
tell right now is that it has nothing to do with the Java compilation,
which is not very surprising.
 

Why is it then that doing a ?jsp_precompile=true for all my JSPs and NO 
other action causes this?

For really large web applications, I think you should precompile as
many JSPs as possible anyway, as a JSP compiled dynamically will
always use more resources (even if there is no bug in Jasper).
 

Well thats probably an approach we will take but its unfortunate.
If i had a profiler I would connect it to figure out whats going on but 
I'm really not happy with any of them.

Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412



OutOfMemory errors compiling JSPs on 5.0.16 and 5.5.4

2004-11-12 Thread Kevin A. Burton
I'm having a terrible time trying to get my JSPs compiled on Tomcat.
We started having OutOfMemory problems a while back and I've tracked it 
down to JSP compilation.

Here's what I can do to replicate the problem:
- shutdown tomcat
- remove the work directory
- startup tomcat
- For all my JSPs I fetch them with the URL foo.jsp?jsp_precompile=true 
to trigger precompilation

After about 10 minutes (and 50-100 JSP files) Tomcat will fail with:
SEVERE: Servlet.service() for servlet jsp threw exception
java.lang.OutOfMemoryError
Note that the VM still shows plenty of memory so I'm not sure what the 
heck is going on here.  I also looked at our file handles and they seem 
fine too.

I've followed all suggestions I've found via Google including:
- setting fork to true
- using jikes
- Migrating to Tomcat 5.5.4 to use jdtool.
The machine has PLENTY of memory available:
export JAVA_OPTS=-server -Xmx1280M -Xms512M -Djava.awt.headless=true
Any suggestions would be appreciated.
We're probably going to migrate to using the command line JspC compiler 
to build all our JSPs before hand so the webapp doesn't need to compile 
them at runtime but this seems like a cheap workaround.  I'd rather 
Tomcat weren't broken in this regard.

Kevin
--
Use Rojo (RSS/Atom aggregator).  Visit http://rojo.com. Ask me for an 
invite!  Also see irc.freenode.net #rojo if you want to chat.

Rojo is Hiring! - http://www.rojonetworks.com/JobsAtRojo.html
If you're interested in RSS, Weblogs, Social Networking, etc... then you 
should work for Rojo!  If you recommend someone and we hire them you'll 
get a free iPod!
   
Kevin A. Burton, Location - San Francisco, CA
  AIM/YIM - sfburtonator,  Web - http://peerfear.org/
GPG fingerprint: 5FB2 F3E2 760E 70A8 6174 D393 E84D 8D04 99F1 4412

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]