Issue
- Looking into the thread dumps, few threads were getting stuck as below with OracleImplicitConnectionCache and running out of implicit connection cache issue
tomcat-http--300 - priority:5 - threadId:0x00007f6ac4286000 - nativeId:0x960 - nativeId (decimal):2400 - state:TIMED_WAITING
stackTrace:
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at oracle.jdbc.pool.OracleImplicitConnectionCache.processConnectionWaitTimeout(OracleImplicitConnectionCache.java:3050)
- locked <0x000000072f081790> (a oracle.jdbc.pool.OracleImplicitConnectionCache)
at oracle.jdbc.pool.OracleImplicitConnectionCache.getConnection(OracleImplicitConnectionCache.java:388)
at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:428)
at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:202)
Environment
- Liferay portal 6.2EE
- Oracle Database 12c
Resolution
- In the Oracle document, it described as "Implicit Connection Caching is de-supported in Oracle Database 12c"
- Unofficial links for ready reference for the same.
# Deprecated features and implicit connection caching
Kindly note, the provided unofficial links are not the official documentation from Liferay, you can choose to use and follow these at your discretion by connecting with your DB or technical team.
Additional Information
- Other unofficial links for the similar behavior