cancel
Showing results for 
Search instead for 
Did you mean: 

Java VM settings -- Mis-understanding

Former Member
0 Kudos

Dear Expert,

I'm implementing the Java VM recomendation from Note 723909 - Java VM settings for J2EE 6.40/7.0

I found this statment in that note:

*****"Remark on -XX:PrintClassHistogram and -XX:HeapDumpOnCtrlBreak:

be aware that both options use thread dump event to trigger some additional activity. First of all, both of them trigger Full GC. Second, it takes some time to dump the histogram table and the entire heap. Therefore thread dumps shouldn't be made too often if one of the above options is used. For example scheduling thread dump every two seconds will make your system fully busy with itself and inavailable just because it executes Full GC every time"*****

So if I want to use these two parameters -XX:PrintClassHistogram and -XX:HeapDumpOnCtrlBreak

how/where can I confirm that there is no scheduling for thread dump in my system? and which paramter can control the scheduling period?

thanks in advance,

Sherif

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hello Sherif,

There is no scheduling for threaddumps from within the j2ee engine atleast. Its not like threaddumps get generated periodically without any external triggering! To generate threaddump you have to follow note 710154. The only time threaddump automatically gets generated is when the system crashes. Usually, you are asked to create multiple threaddumps by SAP Support incase of very slow system performance or system hang. However, in those cases, you must keep in mind that the heapdumps will also get generated along with the threaddump as the command to generate both is the same. No harm, just that you need to ensure you have enough disk space as heapdumps can be pretty big anywhere from 2-4G per dump.

More info about heapdump (for sun jdk) is given in 1004255.

Hope this helps.

Best Regards,

Snehal Bhaidasna

SAP Labs, CA(USA)