DB Agent error: java.lang.Error: Incompatible version of libocijdbc...
search cancel

DB Agent error: java.lang.Error: Incompatible version of libocijdbc...

book

Article ID: 88427

calendar_today

Updated On:

Products

CA Automic Workload Automation - Automation Engine CA Automic One Automation Automic SaaS

Issue/Introduction

When running a job on a Database Agent connecting to an Oracle database or previewing a SQL Variable pointing to Oracle, the agent crashes and job fails with an error (see below) or the preview hangs and agent crashes:

The agent log shows something like:

20250328/092308.067 - U00045014 Exception 'java.lang.Error: "Incompatible version of libocijdbc[Jdbc:1926000, Jdbc-OCI:1922000"' at 'oracle.jdbc.driver.T2CConnection$1.run():4296'.
20250328/092308.068 - U00003620 Routine 'com.uc4.ex.ThreadPool$RunnableDecorator' forces trace because of error.
20250328/092308.069 - U00003450 The TRACE file was opened with the switches '0000000000000000'.
20250328/092308.276 - U00003449 Output to the TRACE file is finished.
20250328/092308.278 - U02000041 Shutdown Agent 'DB_SERVICE'.
20250328/092308.280 - U02000010 Connection to Server 'automic_server.example.com:8443' terminated.

The agent trace shows something like:


java.lang.Error: Incompatible version of libocijdbc[Jdbc:121010, Jdbc-OCI:121020 
at oracle.jdbc.driver.T2CConnection$1.run(T2CConnection.java:4094) 
...


Some other examples of the error:

20250328/092308.171 - 26               ----------------------- Stack Trace -----------------------
20250328/092308.172 - 26               java.lang.Error: Incompatible version of libocijdbc[Jdbc:1926000, Jdbc-OCI:1922000
....

Environment

Component: CA Automic Workload Automation, RA OEBS

Release: All versions

Cause

The Oracle client and the ojdbc jar need to be the exact same version. 

Resolution

Possible solutions

The errors above show the versions and the mismatch.  For example:

Incompatible version of libocijdbc[Jdbc:1926000, Jdbc-OCI:1922000

shows the ojdbc driver (thin client) is version 19.26.0.0.0 and the Oracle client (thick client) is 19.22.0.0.0

The jar file being used in the agent's jdbc directory will likely have a name like ojdbc8.jar or ojdbc10.jar, etc...  To see the exact version, run a java command against it like:

java -jar ojdbc8.jar

The result will show something like:

[automic@automicserver lib]$ java -jar ojdbc8.jar
Oracle 19.26.0.0.0 JDBC 4.2 compiled with javac 1.8.0_201 on Thu_Apr_04_20:28:01_PDT_2019
#Default Connection Properties Resource
#Fri Mar 28 07:58:14 PDT 2025

***** JCE UNLIMITED STRENGTH IS INSTALLED ****

 


You can usually find the oracle client on the same server as the agent by going to $ORACLE_HOME/jdbc/lib and see the ojdbc#.jar files there.  A DBA should be able to help find the correct one for the situation.  This ojdbc#.jar file needs to be placed into the agent /bin/jdbc directory.