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 26ai | Earlier than Oracle 26ai | 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 (endRequest) |
| 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 ProC/C++ , ProCOBOL, 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 events property set to TRUE |