Fatal error "java.lang.NoSuchMethodError: oracle.jdbc.pool.OracleDataSource.setConnectionCachingEnable" thrown on start-up of TIBCO BusinessEvents (BE) agent when try to initialize the Oracle database connection pool for Database Concepts (DBConcepts)

Fatal error "java.lang.NoSuchMethodError: oracle.jdbc.pool.OracleDataSource.setConnectionCachingEnable" thrown on start-up of TIBCO BusinessEvents (BE) agent when try to initialize the Oracle database connection pool for Database Concepts (DBConcepts)

book

Article ID: KB0073496

calendar_today

Updated On:

Products Versions
TIBCO BusinessEvents Enterprise Edition 5.x/6.x

Description

The Oracle database connection pool for DBConcepts cannot be initialized on startup of the BE agent and all database operations fail (connections unavailable).

"FATAL" error:
<timestamp> <host> FATAL [main] - [container.standalone] oracle.jdbc.pool.OracleDataSource.setConnectionCachingEnabled(Z)V
java.lang.NoSuchMethodError: oracle.jdbc.pool.OracleDataSource.setConnectionCachingEnabled(Z)V
at com.tibco.cep.modules.db.service.OraclePre12vConnectionPool.activate(SourceFile:71)
at com.tibco.cep.modules.db.service.JDBCConnectionPoolOracle.init(SourceFile:66)
at com.tibco.cep.modules.db.service.JDBCConnectionPoolManager.init(SourceFile:32)
at com.tibco.cep.modules.db.service.DBConnectionFactory.initialize(SourceFile:61)
at com.tibco.cep.modules.impl.ModuleManagerImpl.init(ModuleManagerImpl.java:40)
...


 

Issue/Introduction

Fatal error "java.lang.NoSuchMethodError: oracle.jdbc.pool.OracleDataSource.setConnectionCachingEnable" thrown on start-up of TIBCO BusinessEvents (BE) agent when try to initialize the Oracle database connection pool for Database Concepts (DBConcepts)

Environment

All Operating Systems

Resolution

The behavior where connection pool was enabled by default in BE has been removed (deprecated) in Oracle JDBC driver version (21.1.x) and replaced with a new version (Oracle Universal Connection Pool).
There are two options to fix the issue. We recommend to add the property to the CDD cluster area.

1.
To use the new Oracle Universal Connection Pool add CDD property

be.dbconcepts.oracle.pool.v12=true
Note:
It is required to copy the ojdbc<version>.jar and ucp.jar files from Oracle JDBC driver libraries to the BE classpath.

or

2.
To use the internal pooling mechanism instead of the Oracle connection pool add CDD property
be.dbconcepts.use.oracle.pool=false