Neil,

are you sure this is a tomcat reference holding on to it?
it could be one of your classes as well, you need to run it through a memory
profile in order to find out

Yeah, it's possible (and probable) that the TagHandlerPool maintains a reference back to the ServletContext in which it lives. That might kew your results. I'm sure that the TagHandlerPool isn't actually taking up that much memory.


Do you have any of your own tag libraries, or are you using only 3rd-party taglibs? If you are using your own, check to see if you are holding on to references or something like (anything like shared objects between tags -- that kind of thing).

If you are using 3rd-party only, check their bug lists to see if there are memory leaks listed as bugs.

If you have a profiler handy (something more robust that the heap dumper), check to see how many instances of various types there are. For example, if you are using org.foo.bar.taglib, then filter the object list by org.foo.bar.taglib and take a look at how many instances there are. If you find that there are thousands of references to tag handlers, then something is probably wrong with Tomcat. Otherwise, several hundred references doesn't sound horrible. It's possible that they haven't been GC'd yet.

I also noticed that you are using JDK 1.4.1. I've heard that this version (it might only be the Sun distro -- can someone confirm?) has an implementation of StringBuffer that has a terrible memory leak. You might want to consider upgrading to 1.4.2 if that's possible.

Hope that helps.

-chris


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



Reply via email to