How to resolve the error "Incompatible version of libocijdbc[Jdbc:193000, Jdbc-OCI:194000]" when establishing a test connection to Oracle OCI Driver ?

How to resolve the error "Incompatible version of libocijdbc[Jdbc:193000, Jdbc-OCI:194000]" when establishing a test connection to Oracle OCI Driver ?

book

Article ID: KB0070956

calendar_today

Updated On:

Products Versions
TIBCO Data Virtualization All Supported versions

Description

When attempting to establish a successful connection to the Oracle OCI driver-based data source in TIBCO Data Virtualization(TDV) Studio, we may encounter the below error message if there is a version mismatch :
==========
Unable to connect to the data source "/shared/my_tests/Oracle19c_OCI" at "null:0@client_access" with the supplied connection information.  [datasrc-3961050]
Unable to connect to the data source "/shared/my_tests/Oracle19c_OCI" at "jdbc:oracle:oci:@client_access".  Make sure the URL information, user name and password are correct.  [datasrc-3961025]
Cause: Incompatible version of libocijdbc[Jdbc:193000, Jdbc-OCI:194000 [Log ID: 437f6499-1966-468d-956c-dd57cc52f716]
==========
The issue arises from the mismatch between the version used for the OCI client and the version used by the Type2 thin driver (TDV) or the one on the Database Server.

Issue/Introduction

This article explains how to resolve the error "Incompatible version of libocijdbc[Jdbc:193000, Jdbc-OCI:194000]" when establishing a test connection to Oracle OCI Driver in TIBCO Data Virtualization Studio.

Environment

All Supported Environments

Resolution

In order to resolve the issue, ensure that the libocijdbc drivers used across the OCI client, TIBCO Data Virtualization(TDV), and the Database Server are of the same major and minor versions. This may require upgrading or downgrading the drivers to match the desired version.
In the error message above: Cause: Incompatible version of libocijdbc[Jdbc:193000, Jdbc-OCI:194000]

The OCI client driver version is observed to be 19.4 (Jdbc-OCI:194000, where 19 denotes the major version and 4.0 denotes the minor version), while the Type2 thin driver (TDV) or the one in the Database Server is using version 19.3 (Jdbc:193000, with 19 as the major version and 3.0 as the minor version).
Achieving this may necessitate either upgrading or downgrading the drivers to ensure they match the desired version.

To confirm the versions of the drivers in use, please follow the steps outlined below:

  1. Right-click on the driver file.
  2. Select "7-zip" from the context menu.
  3. Choose "Open archive" to explore the contents of the driver file.
  4. Navigate to the "manifest.mf" file (Maybe located in META-INF folder) .
  5. Open the "manifest.mf" file in a notepad to find the driver version mentioned within it.
User-added image

Note:
 If the Oracle Instant Client is installed on a separate machine, it's important to note that the versions of the Oracle Instant Client and Oracle Server might not match. For instance, Oracle Client 19.x can establish a connection with Oracle Server 11.2. However, it's crucial for the JDBC driver to be of the same version as the Oracle Instant Client to avoid encountering errors like "Native library cannot be loaded" or "Incompatible version of libocijdbc.". For example, consider the following Oracle setup:
  • Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
  • Oracle Instant Client 19.8.0.0
In the scenario mentioned above, using Oracle driver version 19.3.0.0 will result in the "Incompatible version of libocijdbc" error. However, switching to Oracle driver version 19.8.0.0 will enable a successful connection.