Java thread stack overflow caused by Oracle JDBC driver
Issue
- JBoss without this data source starts up normally, however when it is added to the deploy directory JBoss fails to start, with this error in the console output:
11:52:05,720 INFO [ConnectionProviderFactory] Initializing connection provider: org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider ./run.sh: line 210: 18206 Segmentation fault "$JAVA" $JAVA_OPTS -Djava.endorsed.dirs="$JBOSS_ENDORSED_DIRS" -classpath "$JBOSS_CLASSPATH" org.jboss.Main "$@"
- The following error in the Linux /var/log/messages file:
kernel: java[17601]: segfault at 00000000498a2ca8 rip 00002aac2144459d rsp 00000000498a2c90 error 6 java.lang.StackOverflowError-
After one node in the cluster crashes, the other nodes crash in quick succession.
- JVM crash after switching to Oracle thin jdbc driver
# SIGSEGV (0xb) at pc=0x063966c3, pid=11885, tid=638315408 # Problematic frame: # V [libjvm.so+0x3966c3] # Current thread (0x0a013c00): JavaThread "main" [_thread_in_vm, id=11897, stack(0x2606e000,0x260bf000)] siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x00000000 Stack: [0x2606e000,0x260bf000], sp=0x260ba1c8, free space=304k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) V [libjvm.so+0x3966c3] C [libocijdbc11.so+0x4d67] Java_oracle_jdbc_driver_T2CConnection_t2cSetSessionTimeZone+0x57 j oracle.jdbc.driver.T2CConnection.t2cSetSessionTimeZone(JLjava/lang/String;)I+0 j oracle.jdbc.driver.T2CConnection.logon()V+825 j oracle.jdbc.driver.PhysicalConnection.<init>(Ljava/lang/String;Ljava/util/Properties;Loracle/jdbc/driver/OracleDriverExtension;)V+323 j oracle.jdbc.driver.T2CConnection.<init>(Ljava/lang/String;Ljava/util/Properties;Loracle/jdbc/driver/OracleDriverExtension;)V+4 j oracle.jdbc.driver.T2CDriverExtension.getConnection(Ljava/lang/String;Ljava/util/Properties;)Ljava/sql/Connection;+34 j oracle.jdbc.driver.OracleDriver.connect(Ljava/lang/String;Ljava/util/Properties;)Ljava/sql/Connection;+296 j org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(Ljavax/security/auth/Subject;Ljavax/resource/spi/ConnectionRequestInfo;)Ljavax/resource/spi/ManagedConnection;+113 .. .. Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) j oracle.jdbc.driver.T2CConnection.t2cSetSessionTimeZone(JLjava/lang/String;)I+0 j oracle.jdbc.driver.T2CConnection.logon()V+825 j oracle.jdbc.driver.PhysicalConnection.<init>(Ljava/lang/String;Ljava/util/Properties;Loracle/jdbc/driver/OracleDriverExtension;)V+323 j oracle.jdbc.driver.T2CConnection.<init>(Ljava/lang/String;Ljava/util/Properties;Loracle/jdbc/driver/OracleDriverExtension;)V+4 j oracle.jdbc.driver.T2CDriverExtension.getConnection(Ljava/lang/String;Ljava/util/Properties;)Ljava/sql/Connection;+34 j oracle.jdbc.driver.OracleDriver.connect(Ljava/lang/String;Ljava/util/Properties;)Ljava/sql/Connection;+296 j org.jboss.resource.adapter.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(Ljavax/security/auth/Subject;Ljavax/resource/spi/ConnectionRequestInfo;)Ljavax/resource/spi/ManagedConnection;+113
Environment
- Oracle JDBC thin (Java) driver version 11.2.0.1.0
- Oracle JDBC OCI driver 11.2
- Oracle/Sun JDK 1.6.0_u13
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
