JVM crashes when trying to connect to Oracle using OCI

I have three machines configured as follows:

  • CompA: Starting Oracle 10.2.0.3 Server
  • CompB: starting Oracle 10.2.0.4 server and my client code
  • CompC: running client code only

In client code on both CompB and CompC, connecting to Oracle DB works flawlessly using the Thin driver.

I am trying to connect to every Oracle database from client code through an OCI driver using

Connection conn = DriverManager.getConnection('jdbc:oracle:oci:username/pass@sid');

From inside a Java class that works in jboss. This works very well on CompB, but the JVM runs Jboss in a core dump every time on CompC.

CompC can connect to Oracle servers using Sql * Plus and the same tnsnames.ora file that jboss is trying to link to.

Here is part of the stack trace. It seems to be consistent every time.

Stack: [0x30fcc000,0x3101d000),  sp=0x3101a868,  free space=314k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x2d02d6]
C  [libocijdbc10.so+0x585c]
C  [libocijdbc10.so+0x70a8]  Java_oracle_jdbc_driver_T2CConnection_t2cCreateState+0x15c
j  oracle.jdbc.driver.T2CConnection.t2cCreateState([BI[BI[BI[BISI[S[B[B)I+0
j  oracle.jdbc.driver.T2CConnection.logon()V+551
j  oracle.jdbc.driver.PhysicalConnection.(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Properties;Loracle/jdbc/driver/OracleDriverExtension;)V+381
j  oracle.jdbc.driver.T2CConnection.(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Properties;Loracle/jdbc/driver/OracleDriverExtension;)V+10
j  oracle.jdbc.driver.T2CDriverExtension.getConnection(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/Properties;)Ljava/sql/Connection;+67
j  oracle.jdbc.driver.OracleDriver.connect(Ljava/lang/String;Ljava/util/Properties;)Ljava/sql/Connection;+831
j  java.sql.DriverManager.getConnection(Ljava/lang/String;Ljava/util/Properties;Ljava/lang/ClassLoader;)Ljava/sql/Connection;+210
j  java.sql.DriverManager.getConnection(Ljava/lang/String;)Ljava/sql/Connection;+15

- , ?

UPDATE: , "", , java-, jboss. Oracle, LD_LIBRARY_PATH, jboss, libocijdbc10.so libclntsh.so.10.1 libnnz10.so. jboss , CompB, CompC.

CompB , OCI , CompA CompB. CompC OCI, , CompA, CompB, .

CompB CompC 32- Ubuntu 8.04, CompC 1 , 3,25 CompB.

+3
2

, , . , , JBoss. ( "" ), , , JBoss CompB CompC, , JBoss CompB, ​​ CompC.

, CompB Oracle CompB. CompB, CompA? CompC, Oracle CompB?

, dynlib "libocijdbc10.so", , Oracle CompA CompB. , libocijdbc10.so . , Oracle CompA CompB. , CompB, CompA oracle, , CompC, CompB, .

Oracle OCI CompB CompC.

Update

, :

CompB , OCI , CompA, CompB. CompC OCI, , CompA, CompB, .

, . (, SQL * Plus OCI) , , , OCI CompC; CompA, CompB.

CompC JBoss. Oracle ; CompA CompB CompB, CompC, .

,

  • cmp (1) CompB CompC , .
  • , rcp the drivers CompB CompC .
  • , .
+4

OCI - .

java - , .

+2

Source: https://habr.com/ru/post/1705301/


All Articles