• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Tim Cooke
  • Campbell Ritchie
  • Paul Clapham
  • Ron McLeod
  • Liutauras Vilda
Sheriffs:
  • Jeanne Boyarsky
  • Rob Spoor
  • Bear Bibeault
Saloon Keepers:
  • Jesse Silverman
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
Bartenders:
  • Piet Souris
  • Al Hobbs
  • salvin francis

What are these JVM Errors??

 
Ranch Hand
Posts: 178
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I tried doing testing on our application with 10 user simultaneously doing a search use case. I ran a thread along with the application that shows how many simultaneous connections are made and check if the connections are being closed. I found out in the logs that connnections are not being closed when stress testing 10 or more users. When I test it..say 5 users or 2 users...I could see that the connections are being closed. Also there is this JVM error that comes out everytime I stress test it with 10 or more users.



JVMDG217: Dump Handler is Processing a Signal - Please Wait.
JVMDG315: JVM Requesting Heap dump file
...........JVMDG318: Heap dump file written to C:\Program Files\IBM\WebSphere Studio\Application Developer\v5.1.2\heapdump.20070329.183955.2964.txt
JVMDG303: JVM Requesting Java core file
JVMDG304: Java core file written to C:\Program Files\IBM\WebSphere Studio\Application Developer\v5.1.2\javacore.20070329.184149.2964.txt
JVMDG215: Dump Handler has Processed Outofmemory Signal -1.


Is this the primary cause of the connections not being closed?

I'd appreciate any form of help. Thanks and have a nice day everyone.
 
Andres Delrotti
Ranch Hand
Posts: 178
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I find out also that these ff exceptions happens

[3/29/07 18:45:18:422 CST] 62ef8d08 WebGroup E SRVE0026E: [Servlet Error]-[]: java.lang.OutOfMemoryError
at com.ibm.websphere.jdbc.sqlserver.SQLServerByteOrderedDataReader.<init>(Unknown Source)
at com.ibm.websphere.jdbc.sqlserver.tds.TDSConnection.createReader(Unknown Source)
at com.ibm.websphere.jdbc.sqlserver.SQLServerImplStatement.<init>(Unknown Source)
at com.ibm.websphere.jdbc.sqlserver.SQLServerImplConnection.createImplStatement(Unknown Source)
at com.ibm.websphere.jdbc.base.BaseStatement.setupImplStatement(Unknown Source)
at com.ibm.websphere.jdbc.base.BaseStatement.<init>(Unknown Source)
at com.ibm.websphere.jdbc.base.BasePreparedStatement.<init>(Unknown Source)
at com.ibm.websphere.jdbc.base.BaseConnection.prepareStatement(Unknown Source)
at com.ibm.websphere.jdbcx.base.BasePooledConnection.prepareStatement(Unknown Source)
at com.ibm.websphere.jdbcx.base.BaseConnectionWrapper.prepareStatement(Unknown Source)
at com.ibm.ws.rsadapter.jdbc.WSJdbcConnection.prepareStatement(WSJdbcConnection.java(Compiled Code))
at com.ibm.ws.rsadapter.jdbc.WSJdbcConnection.prepareStatement(WSJdbcConnection.java(Compiled Code))





Is this a connection leak???
 
Bartender
Posts: 9626
16
Mac OS X Linux Windows
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
If you can simulate 5 users hitting your system for an extended amount of time (say, a few hours) and not get an OutOfMemoryError while 10 simultaneous users get an OOM immediately, I'd say the culprit is that your VM doesn't have enough memory to support 10 simultaneous users. If this is the case, consult your WebSphere documentation for instructions on how to increase the memory available to the VM.
If 5 users get an OutOfMemoryError after a period of use, then you have some sort of leak (files, database connections, collections, sockets, threads and many other resources, if not cleaned up properly, will contribute to leaks). These leaks require some detective work to identify and resolve.
 
Ranch Hand
Posts: 94
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi!

As mentioned by Joe Ess, if get a leak try to analyze the Heap Dump and yoy may see which objects are staying alive in the heap and are probably the cause of your leak. Sun is providing some tools like HAT (Heap Analysis Tool)

Daniel
 
Andres Delrotti
Ranch Hand
Posts: 178
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
^^
Thanks. I tried downloading the Heap Analysis Tool but Im having a hard time figuring out how to make it work. Have you tried using it before?
 
Ranch Hand
Posts: 862
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Using the jamon jdbc driver can shed a lot of light on jdbc problems. The jamon jdbc driver is simply a proxy that reroutes calls to whatever your underlying jdbc driver is.

No code changes are required. Simply change your jdbc driver class name, and url. Also, install jamon.war to view the statistics. Look at the java ranch faq link below to see how to use the driver.

JAMon will monitor query execution times, exceptions as well as any jdbc method calls such as connect and close.
[ March 29, 2007: Message edited by: steve souza ]
 
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
IBM has a site that has some useful tools to analyse Heap dump and Java core dump:
http://www.alphaworks.ibm.com/

http://www.alphaworks.ibm.com/tech/heapanalyzer
http://www.alphaworks.ibm.com/tech/jca

You can use these above tools to debug your dump files.
You also need to read IBM red book "sg246198 - IBM WebSphere V5.1 Performance, Scalability, and High Availability". You can search "heap dump" keyword for more detail. The author also gave useful strategies to test, to set production environment of JVM heap memory settings.
 
You showed up just in time for the waffles! And this tiny ad:
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop
https://coderanch.com/wiki/718759/books/Building-World-Backyard-Paul-Wheaton
reply
    Bookmark Topic Watch Topic
  • New Topic