Thanks. That worked. Anything unusual? Garbage collection is happening too
often?

[root@server logs]# cat /usr/share/apache-tomcat-6.0.37/logs/heap.log
1.910: [GC 16192K->1923K(260160K), 0.0150080 secs]
2.454: [GC 18115K->3151K(260160K), 0.0137140 secs]
2.760: [GC 19343K->3309K(260160K), 0.0058220 secs]
3.648: [GC 19501K->4446K(260160K), 0.0062870 secs]
4.000: [GC 20638K->5063K(260160K), 0.0080940 secs]
4.305: [GC 21255K->6302K(260160K), 0.0060890 secs]
4.598: [GC 22494K->6323K(260160K), 0.0062020 secs]
5.664: [GC 22515K->7098K(260160K), 0.0055070 secs]
6.980: [GC 23290K->8708K(260160K), 0.0176410 secs]
7.332: [GC 24900K->12045K(260160K), 0.0179400 secs]
7.794: [Full GC 24591K->12864K(260160K), 0.2538960 secs]
8.476: [GC 29184K->14200K(260288K), 0.0080560 secs]
8.939: [GC 30520K->15401K(260288K), 0.0407000 secs]
9.379: [GC 31721K->16897K(260288K), 0.0099850 secs]
9.603: [GC 33217K->16652K(260288K), 0.0649140 secs]
10.498: [GC 32972K->17768K(260288K), 0.0068540 secs]
10.885: [GC 34088K->18538K(260288K), 0.0084330 secs]
11.225: [GC 34858K->19584K(260288K), 0.0071730 secs]
11.466: [GC 35904K->20313K(260288K), 0.0050570 secs]
12.128: [GC 36633K->20565K(260288K), 0.0042210 secs]
12.385: [Full GC 26015K->20204K(260288K), 0.2847340 secs]
13.817: [GC 36524K->22174K(260288K), 0.0155690 secs]
14.127: [GC 38494K->25303K(260288K), 0.0816490 secs]
14.671: [GC 41623K->27150K(260288K), 0.0436660 secs]
15.173: [GC 43470K->28757K(260288K), 0.0140720 secs]
15.414: [Full GC 32030K->28926K(260288K), 0.3071990 secs]
65.004: [GC 45310K->31775K(260352K), 0.0105440 secs]
[root@server logs]#


On Thu, Jan 23, 2014 at 10:33 PM, André Warnier <a...@ice-sa.com> wrote:

> Randeep wrote:
>
>> Hi all,
>> Thanks a lot for valuable points. Here the information you guys asked and
>> the changes I made.
>>
>> OS : CentOS release 5.4 (Final)
>> httpd-2.2.3-65.el5.centos(front_end) +(mod_jk)+ apache-tomcat-6.0.37
>>
>> I installed httpd using yum.
>> Downloaded tomcat from Apache as compressed archive(tar.gz)
>>
>> I'm using following startup script.
>> [root@server ~]# cat /etc/init.d/tomcat6
>> #!/bin/bash
>> # description: Tomcat Start Stop Restart
>> # processname: tomcat
>> # chkconfig: 234 20 80
>> JAVA_HOME=/usr/java/default
>> export JAVA_HOME
>> PATH=$JAVA_HOME/bin:$PATH
>> export PATH
>> CATALINA_HOME=/usr/share/apache-tomcat-6.0.37
>> case $1 in
>> start)
>> sh $CATALINA_HOME/bin/startup.sh
>> ;;
>> stop)
>> sh $CATALINA_HOME/bin/shutdown.sh
>> ;;
>> restart)
>> sh $CATALINA_HOME/bin/shutdown.sh
>> sh $CATALINA_HOME/bin/startup.sh
>> ;;
>> esac
>> exit 0
>>
>> As you said, I removed the JAVA_OPTS declaration from .bash_profile and I
>> have created setenv.sh and set JAVA_OPTS in it.
>> [root@server bin]# pwd
>> /usr/share/apache-tomcat-6.0.37/bin
>>
>> [root@server bin]# cat setenv.sh
>> export JAVA_OPTS='-Xms256m -Xmx512m -Xss512k -verbose:gc -Xloggc:heap.log'
>>
>> Now it shows in grep.
>> [root@server bin]# ps aux | grep Bootstrap
>> root      1100 33.7  5.4 707052 95240 pts/0    Sl   11:29   0:06
>> /usr/java/default/bin/java
>> -Djava.util.logging.config.file=/usr/share/apache-tomcat-
>> 6.0.37/conf/logging.properties
>> -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
>> -Xms256m
>> -Xmx512m -Xss512k -verbose:gc -Xloggc:heap.log
>> -Djava.endorsed.dirs=/usr/share/apache-tomcat-6.0.37/endorsed -classpath
>> /usr/share/apache-tomcat-6.0.37/bin/bootstrap.jar
>> -Dcatalina.base=/usr/share/apache-tomcat-6.0.37
>> -Dcatalina.home=/usr/share/apache-tomcat-6.0.37
>> -Djava.io.tmpdir=/usr/share/apache-tomcat-6.0.37/temp
>> org.apache.catalina.startup.Bootstrap start
>> root      1158  0.0  0.0   3932   692 pts/0    R+   11:29   0:00 grep
>> Bootstrap
>> [root@server bin]#
>>
>> But nothing came in heap.log. So I better monitor this and if I get the
>> OOM
>> again I have to increase Max limit!
>>
>
> Maybe you should provide a full path for the -Xloggc option ?
>
>
>
>>
>> On Thu, Jan 23, 2014 at 8:50 PM, Christopher Schultz <
>> ch...@christopherschultz.net> wrote:
>>
>>  -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA256
>>>
>>> Randeep,
>>>
>>> On 1/23/14, 7:43 AM, Randeep wrote:
>>>
>>>> I'm getting out of memory exception errors.
>>>>
>>> :(
>>>
>>>  Exception in thread "Timer-1" java.lang.OutOfMemoryError: Java heap
>>>> space at java.util.Arrays.copyOf(Arrays.java:2882) at
>>>>
>>>>  java.lang.AbstractStringBuilder.expandCapacity(
>>> AbstractStringBuilder.java:100)
>>>
>>>>
>>>>  at
>>>
>>>> java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:572)
>>>>
>>>>
>>>>  at java.lang.StringBuffer.append(StringBuffer.java:320)
>>>
>>>> at org.json.JSONArray.toString(JSONArray.java:834) at
>>>> org.json.JSONObject.valueToString(JSONObject.java:1359) at
>>>> org.json.JSONObject.toString(JSONObject.java:1233) at
>>>> com.xxx.xxx.servlet.WServlet.writeProgramJson(WServlet.java:503) at
>>>> com.xxx.xxx.servlet.WServlet$1.run(WServlet.java:414) at
>>>> java.util.TimerThread.mainLoop(Timer.java:512) at
>>>> java.util.TimerThread.run(Timer.java:462)
>>>>
>>> If you are trying to serialize huge JSON objects, this is going to
>>> happen. I'm not sure if JSON is as smart as the Java Serialization
>>> engine, but if you have a circular-reference in your object graph, I'd
>>> be willing to bet that the JSON serializer will run forever and
>>> exhaust your heap.
>>>
>>> It's also possible that you simply have a tiny heap and need more,
>>> especially if you aren't currently setting any heap parameters.
>>>
>>>  Is there anyway to see currently set jvm heap size details? Any
>>>> linux commands.
>>>>
>>> You can attach any profiler to your app. Good luck catching this in
>>> the act, though, in production.
>>>
>>> You can also use "jmap -heap" which comes with the JDK. Just point it
>>> at a process and you'll get a heap summary from a running JVM. Make
>>> sure your JVM and jmap version match.
>>>
>>>  I have tried creating setenv.sh and putting the new parameters in
>>>> it. but echo $JAVA_OPTS was not giving any value.
>>>>
>>> setenv.sh is run during Tomcat startup. Running "echo $JAVA_OPTS" from
>>> the command-line isn't going to reveal anything. What you want to do
>>> is modify setenv.sh, re-launch Tomcat, and then look at the process
>>> command line... something like this:
>>>
>>> $ ps aux | grep Bootstrap
>>>
>>> This should give you the whole command-line for Tomcat, and you can
>>> verify that your heap options have been set.
>>>
>>>  So I have put in .bash_profile and run it. Then restarted tomcat6.
>>>>
>>> Don't do that: it will only work if you login using bash, and it won't
>>> work for other users you may have to restart Tomcat.
>>>
>>>  this is the line I added in .bash_profile. JAVA_OPTS="-Xms256m
>>>> -Xmx512m -Xss512k -verbose:gc -Xloggc:heap.log"
>>>>
>>> You'll need to "export" JAVA_OPTS, otherwise it won't do anything for
>>> you.
>>>
>>> - -chris
>>> -----BEGIN PGP SIGNATURE-----
>>> Version: GnuPG v1
>>> Comment: GPGTools - http://gpgtools.org
>>> Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
>>>
>>> iQIcBAEBCAAGBQJS4TM+AAoJEBzwKT+lPKRYfB4QAMP4/MORiK92nK4kJ+KD9alc
>>> 2QYcriasb8QkPPgvYHGhGaxeLIprb1TE6tZdMSp08bHadDr+HpSbxi5xq9C6A1RJ
>>> fabHj9ShrXqdtTFiewPH3P/ulvaaJNPD1LeIFBwoG7/4vAIGKW48gLhaRUYcbe+z
>>> lV2NsZ18u38EZ9KRR8An66jX4PkwMXxl4QdQx5HDmuS/Sx8G7AfDVkuSB5PMNXbg
>>> TVlSEz5VeJnEGtBwnjgIa6ZSTv+iIv+nsw4WVuMe+4h1R07e1axxNismkgpUsU46
>>> Ra4P7TssgdrqXFXmX4+kPNzd3xbbhPYIOOrQ0PYt6wGF0Wd9N1r/gvvViDbgghca
>>> wp39c3VJM8eE2vy9n0XCGYBkdq2DnRNVFV2y2xnfwecWKtDPEWfklTk8ZvbcAyxe
>>> hi3hxQnChCk74nxd/hvI1uNfgHcd/NwtmifwXPNM0BQCZ+AJarCbGca+a/BTTBaX
>>> txVIuIEf3jt/gpFu28UI8kt7Hx/PgWJ32QFyIPCbH5EYaSiKSz/Q6wCTvJTbUG4s
>>> GCK8AB/rGf1Z8efKlUZw2ESr1yX/VBCu9uOEK/60v+AAthiubq+O2ke1TzWKvy/I
>>> MxDhNiMo710w98h5hqIl5SthwXCgv3vEaaiUgDUV8zP3CoOtHL61NNZmLrMBTD2X
>>> 18aTMDKJ9BTvoYoZcmyV
>>> =IL2E
>>> -----END PGP SIGNATURE-----
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>>
>>>
>>>
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
>
>


-- 
Randeep
Mob: +919447831699[kerala]
Mob: +919880050349[B'lore]
I blog here:
http://www.randeeppr.me/
Follow me Here:
http://twitter.com/Randeeppr
Poke me here!
http://www.facebook.com/Randeeppr
A little Linux Help
http://www.linuxhelp.in/
Work profile:
http://in.linkedin.com/in/randeeppr

Reply via email to