Hi,

   I'm sure that this issue has already been discussed here more than once 
and as I can remember without any final and useful universal solution 
(maybe there's not one). I have been fighting with it for years (and still 
don't know where lies the "bug"). My solution is to restart Tomcat (via 
cron) once a day and use a special piece of code to do this - I test if 
Tomcat is really stopped correctly and if not I kill the Tomcat 
process (bash script):


/opt/tomcat/bin/shutdown.sh
echo "Waiting 45 second for Tomcat shutdown..."
# This is necessary, because shutting down process can take some time, 
# 45 second is enough according to my experience 
sleep 45

RUNNING=`ps ax | grep opt\/tomcat | grep 2048`

if [ -z "$RUNNING" ]
then
         echo "Tomcat has been stopped...";
else
         echo "Shutdown failure... Trying to do hard kill."
         PID=`echo $RUNNING | cut -d ' ' -f 1`
         kill -9 $PID

        # give system some time to kill it
        sleep 3

        # check it again
         RUNNING=`ps ax | grep opt\/tomcat | grep 2048`
         if [ -z "$RUNNING" ]
         then
                 echo "Tomcat has been killed with -9."
         else
                 echo "Cannot kill Tomcat. Administrator needed!"
                 exit 1
         fi
fi


This "shutdown" Tomcat for sure.

Vlastik

----------------------------------------------------------------------------
Vlastimil Krejčíř
Library and Information Centre, Institute of Computer Science
Masaryk University, Brno, Czech Republic
Email: krejcir (at) ics (dot) muni (dot) cz
Phone: +420 549 49 3872
ICQ: 163963217
Jabber: [email protected]
----------------------------------------------------------------------------

On Tue, 24 May 2011, Jason Stirnaman wrote:

>
> I found a long, interesting thread from September 2010 at 
> http://www.mail-archive.com/[email protected]/msg11969.html 
> around this topic and an excellent description of the Tomcat 
> MemoryLeakProtection at http://wiki.apache.org/tomcat/MemoryLeakProtection. I 
> obviously didn't do my homework before posting. It looks like Tomcat 7.0.6 
> *might* "solve" this problem.
> However, I'm still unclear whether there is anything else I can do now to 
> work around it - to at least stop the leak detection from thwarting my 
> restarts?
>
> As Tim suggested in that earlier thread I'm including more details from my 
> production server while Tomcat is up and DSpace is running OK.
>
> Hardware:
>  Solaris 10 Zone virtual machine with 1167MHz processor
>  Output from top (I'm open to better methods, but I'm limited to the single 
> Zone.)
>  40 processes: 39 sleeping, 1 on cpu
>  CPU states: 93.5% idle,  3.7% user,  2.8% kernel,  0.0% iowait,  0.0% swap
>  Kernel: 18117 ctxsw, 6164 trap, 8377 intr, 45826 syscall, 4 fork, 543 flt, 
> 16 pgin, 40 pgout
>  Memory: 64G phys mem, 40G free mem, 4104M total swap, 4104M free swap
>
> RAM:
> "CATALINA_OPTS" value="-Xms256m -Xmx1028m -XX:MaxPermSize=256m"
> I recently increased RAM to 1028 from (I think) 256M and I doubled PermGen. 
> Since then the Java process has consistently been using around 490M and 
> usually less than 1% CPU.
> Postgres uses around 520M.
>
> DSpace: version 1.7.1 with XMLUI and Discovery
>
> Issues: Prior to my increasing the allotted Catalina RAM and Permgen, Tomcat 
> would stop responding around every 3 days (? number of requests) due to the 
> database pool filling up ("cannot get a connection - pool exhausted"). I 
> decided to also restart Tomcat every night to prevent this from happening. 
> That's when I encountered the memory leak warnings preventing my restarts.
>
> Jason
>
>
> Jason Stirnaman
> Biomedical Librarian, Digital Projects
> A.R. Dykes Library, University of Kansas Medical Center
> [email protected]
> 913-588-7319
>
>
>>>> On 5/23/2011 at 01:02 PM, in message <4DDAA130.D22 : 5 : 23711>, Jason 
>>>> Stirnaman wrote:
>
>
> I get the error below when stopping Tomcat. In this particular case, I was 
> trying to use Solaris' SMF to restart the Tomcat service. Instead, it never 
> completed shutting down and it stopped answering requests. I got this error 
> stanza repeated over and over in the log. Any ideas what's going on?
> Thanks,
> Jason
>
>
> Details:
> DSpace 1.7.1 w/ Discovery
> Tomcat 6.0.32
> Solaris 10
>
>
> May 21, 2011 12:00:07 AM org.apache.coyote.http11.Http11Protocol pause
> INFO: Pausing Coyote HTTP/1.1 on http-80
> May 21, 2011 12:00:08 AM org.apache.catalina.core.StandardService stop
> May 21, 2011 12:00:07 AM org.apache.coyote.http11.Http11Protocol pause
> May 21, 2011 12:00:07 AM org.apache.coyote.http11.Http11Protocol pause
> INFO: Pausing Coyote HTTP/1.1 on http-80
> May 21, 2011 12:00:08 AM org.apache.catalina.core.StandardService stop
> INFO: Stopping service Catalina
> May 21, 2011 12:00:49 AM org.apache.catalina.loader.WebappClassLoader 
> clearReferencesThreads
> SEVERE: The web application [] appears to have started a thread named 
> [MultiThreadedHttpConnectionMa
> nager cleanup] but has failed to stop it. This is very likely to create a 
> memory leak.
> May 21, 2011 12:00:49 AM org.apache.catalina.loader.WebappClassLoader 
> clearThreadLocalMap
> SEVERE: The web application [] created a ThreadLocal with key of type 
> [java.lang.ThreadLocal] (value
> [java.lang.ThreadLocal@1de92e]) and a value of type 
> [org.apache.xerces.parsers.SAXParser] (value [o
> rg.apache.xerces.parsers.SAXParser@17533df]) but failed to remove it when the 
> web application was st
> opped. This is very likely to create a memory leak.
> May 21, 2011 12:00:49 AM org.apache.catalina.loader.WebappClassLoader 
> clearThreadLocalMap
> SEVERE: The web application [] created a ThreadLocal with key of type 
> [java.lang.ThreadLocal] (value
> [java.lang.ThreadLocal@1b7fc4e]) and a value of type 
> [org.apache.cocoon.environment.internal.Enviro
> nmentStack] (value [[]]) but failed to remove it when the web application was 
> stopped. This is very
> likely to create a memory leak.
>
> Jason Stirnaman
> Biomedical Librarian, Digital Projects
> A.R. Dykes Library, University of Kansas Medical Center
> [email protected]
> 913-588-7319
>
>
>
>

------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
DSpace-tech mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/dspace-tech

Reply via email to