OutOfMemory GC Overhead using Oracle JDBC Driver

Solution Verified - Updated -

Issue

  • We are facing issues in our production environment with the server hitting very high peaks in memory and going out of memory. (GC overhead)
  • A heap dump shows most of the memory taken up in oracle.jdbc.driver.BufferCaches referenced from oracle T4CConnections' oracle.jdbc.driver.PhysicalConnection$BufferCacheStores.
  • A heap dump shows the following retention under a single instance of org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool:
Class Name                                                                                 | Shallow Heap | Retained Heap | Percentage
--------------------------------------------------------------------------------------------------------------------------------------
org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool @ ...|           72 |   730,013,848 |     66.37%
|- java.util.ArrayList @ 0xa80022f0                                                        |           24 |   730,008,864 |     66.37%
|  '- java.lang.Object[300] @ 0xa8002308                                                   |        1,216 |   730,008,840 |     66.37%
|     |- org.jboss.jca.core.connectionmanager.listener.NoTxConnectionListener @ ...        |           72 |    10,806,344 |      0.98%
|     |  |- org.jboss.jca.adapters.jdbc.local.LocalManagedConnection @ 0xaf882c78          |           72 |    10,806,168 |      0.98%
|     |  |  |- oracle.jdbc.driver.T4CConnection @ 0xaf882cc0                               |          840 |    10,805,152 |      0.98%
|     |  |  |  |- oracle.jdbc.driver.PhysicalConnection$BufferCacheStore @ 0xaf885618      |           24 |    10,675,088 |      0.97%
|     |  |  |  |  |- oracle.jdbc.driver.BufferCache @ 0xaf885d10                           |           32 |    10,578,624 |      0.96%
...
--------------------------------------------------------------------------------------------------------------------------------------

Environment

  • JBoss Enterprise Application Platform (EAP)
  • Oracle JDBC

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content