ONS FAN Application Requirements
Ensure your application server, driver version, and connection pool are configured properly to enable sessions to drain when using ONS FAN.
Oracle UCP
Connection Pool Version | Oracle Driver Version | Recommended Configuration Settings | Comments |
---|---|---|---|
Earlier than Oracle 23ai |
Earlier than Oracle 23ai |
In your app server/container/framework's data source configuration file: Set the UCP property:
|
Include JDBC JAR files
Optional wallet jars, if needed:
Ensure that all JAR files are from the same version (do not mix and match versions. ONS FAN is auto-configured when using the MAA recommended TNS/URL |
23.5.0.24.7 or later |
23.5.0.24.7 or later |
Use the default settings |
Include JDBC JAR files
Optional wallet jars, if needed:
Ensure that all JAR files are from the same version (do not mix and match versions) ONS FAN is auto-configured when using the MAA recommended TNS/URL |
JDBC
Applies to JDBC used in third-party pools or directly in custom code.
Oracle Driver Version | Recommended Configuration Settings | Comments |
---|---|---|
All supported driver versions |
|
Include JDBC JAR files If you have set up wallets for database connections in Oracle
Cloud Autonomous Database, include wallet jars:
Ensure that all JAR files are from the same version (do not mix and match versions) ONS FAN is auto-configured when using the MAA recommended TNS/URL |
WebLogic
Includes WebLogic Generic, WebLogic MDS, and WebLogic AGL.
Application Server Version | Oracle Driver Version | Recommended Configuration Settings | Comments |
---|---|---|---|
14.1.1 or later |
All supported versions Recommend upgrading JDBC driver to the latest version that WebLogic AGL supports |
Upgrade to latest driver, or at a minimum driver version: 19.13 Enable FAN on AGL data source |
By default, draining can happen at connection check-in with
With the recommended settings, draining can also happen at
connection check-out with |
Hikari
Application Server Version | Oracle Driver Version | Recommended Configuration Settings | Comments |
---|---|---|---|
Earlier than 6.0 |
19.21 or later |
Upgrade to Hikari 6.0 |
Not a recommended configuration No request boundaries - no draining by default |
6.0 |
19.21 or later |
With the following properties, draining occurs at
Set the validation level using:
|
See HikariCP Best Practices for Oracle Database and Spring Boot for configuration using ONS/simplefan |
.NET
Application Server Version | Oracle Driver Version | Recommended Configuration Settings |
---|---|---|
Any currently supported version |
ODP.NET Core - Any currently supported version |
On by default in ODP.NET Pooling and HA Events connection string attributes
must remain set to |
.NET Framework
Application Server Version | Oracle Driver Version | Recommended Configuration Settings |
---|---|---|
Any currently supported version |
Managed ODP.NET - Any currently supported version Unmanaged ODP.NET - Any currently supported version |
On by default in ODP.NET Pooling and HA Events connection string attributes must remain
set to |
JBOSS
Application Server Version | Oracle Driver Version | Recommended Configuration Settings | Comments |
---|---|---|---|
Versions earlier than EAP 7.3.9 |
All supported driver versions, latest version recommended |
|
Without If the application is calling JDBC See the requirements of the JDBC driver above for details. |
Versions higher than EAP 7.3.9 |
All supported driver versions, latest version recommended |
|
Without See the requirements of the JDBC driver above for details. |
Tomcat
Application Server Version | Oracle Driver Version | Recommended Configuration Settings | Comments |
---|---|---|---|
9.0, 10.0, 11.0 |
Any version |
If you are using Tomcat with UCP, follow the UCP recommendations above. If you are using Tomcat with the Oracle JDBC driver or Oracle DBCP:
|
With the recommended changes, draining occurs at
connection check-out and check-in
( |
9.0, 10.0, 11.0 |
Any version |
Third-party pools or applications NOT calling Oracle JDBC driver:
|
Draining occurs at connection check-in
(
|
Long Running PL/SQL
Application Server Version | Recommended Configuration Settings | Comments |
---|---|---|
Oracle Database 19 or higher |
Use the following SQL to test drain status between batches. If draining state is detected, then close the connection and obtain a new one.
|
No draining by default; must use recommended SQL at batch intervals. This will work if the batch intervals are less than 1/2 of the drain timeout interval. |
OCI-Based Applications
Including Pro*C/C++ , Pro*COBOL, and python-oracledb in Thick Mode
Application Server Version | Oracle Driver Version | Recommended Configuration Settings | Comments |
---|---|---|---|
Oracle Database 19 or higher |
Oracle Database 19 or higher |
OCI clients embed FAN at the driver level so that all clients can use them regardless of the pooling solution. The database service must have the attribute
If
|
Python must use the "thick" driver and make connections with the
|