The SQL Oracle Agent is up. But when a job is run, the agent crash with the error below:
java.lang.Error: Incompatible version of libocijdbc[Jdbc:121010, Jdbc-OCI:121020
at oracle.jdbc.driver.T2CConnection$1.run(T2CConnection.java:4094)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.jdbc.driver.T2CConnection.loadNativeLibrary(T2CConnection.java:4087)
at oracle.jdbc.driver.T2CConnection.logon(T2CConnection.java:301)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:715)
at oracle.jdbc.driver.T2CConnection.<init>(T2CConnection.java:195)
at oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java:51)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:564)
at com.uc4.ex.sql.db.DriverBridge.establishConnection(DriverBridge.java:137)
at com.uc4.ex.sql.ConnectionManager.getConnection(ConnectionManager.java:212)
at com.uc4.ex.sql.SQLConsumer.ensureConnection(SQLConsumer.java:304)
at com.uc4.ex.sql.SQLConsumer.execute(SQLConsumer.java:132)
at com.uc4.ex.Job.run(Job.java:469)
at com.uc4.ex.ThreadPool$RunnableDecorator.run(ThreadPool.java:53)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Component: CA Automic Workload Automation, RA OEBS
Release: 12.x, 21.x
The Oracle thick and thin driver has to be the exact same version.
From the error message: Jdbc:121010, Jdbc-OCI:121020
The numbers in the error message above may vary, depending on your thick and thin driver version.
Jdbc is the Oracle thin driver (eg: ojdbc7.jar, ojdbc6.jar, etc)
Jdbc-OCI is the Oracle thick driver.
In this case, the thin driver is 12.1.0.1 and thick driver is 12.1.0.2.
Possible solutions
The Oracle thick and thin driver has to be the exact same version.
Solution 1:
-Use the jdbc driver(thin driver) that is the same version as the thich driver . Then, put it in the <SQL_Agent>/bin/jdbc directory
Solution 2:
-If the driver is already present in <SQL_Agent>/bin/jdbc, please remove it because it might not be compatible with the thick client. It is possible that the jdbc driver is already located in OS environmental path which is compatible with the thick client(ex. /usr/app/oracle/product/19c/client_64/lib) .