Hello,
This is my first post to the tomcat forum, so please excuse of any errors.

I am looking at a fix for one of the bug (bug id#53267) in Catalina. Ref -
https://issues.apache.org/bugzilla/show_bug.cgi?id=53267

The bug is in RESOLVED FIXED state.

As per this bug, the one hr time interval (when a GC event is kicked off)
was changed to Long.MAX ( a very long time). It is also mentioned the value
is configurable using a system property -
org.apache.catalina.core.jreMemoryLeakPreventionGCDaemonPeriod.

When I tried setting this property to 3600000, assuming a full GC will be
kicked every hour it did not happen. Curious, I looked into the code for
version 7.0.47, that config variable was not used in
org.apache.catalina.core.JreMemoryLeakPreventionListener.

Code snippet from JreMemoryLeakPreventionListener in tomcat version 7.0.47 :

 Class<?> clazz = Class.forName("sun.misc.GC");
                        Method method = clazz.getDeclaredMethod(
                                "requestLatency",
                                new Class[] {long.class});
                        method.invoke(null, Long.valueOf(Long.MAX_VALUE -
1));

Instead of using the Long.MAX_VALUE-1 by default, it should try and resolve
if from the aforementioned system property.

Am I wrong to assume the config variable will be present in 7.0.47?

Thanks for your time, and my sincere apologies if I had wasted it.

--
Bharath.

Reply via email to