My Oracle Support Banner

Deadlock on SocketChannel During JDBC Connection (Doc ID 2531973.1)

Last updated on AUGUST 30, 2023

Applies to:

JDBC - Version 12.1.0.2.0 and later
Information in this document applies to any platform.

Symptoms


JDBC 12.1.0.2 connection fails with a deadlock.

1LKDEADLOCK    Deadlock detected !!! 
NULL           --------------------- 
NULL            
2LKDEADLOCKTHR  Thread "InterruptTimer" (0x00000000305D1D00) 
3LKDEADLOCKWTR    is waiting for: 
4LKDEADLOCKMON      sys_mon_t:0x00000001260FF6B8 infl_mon_t: 0x00000001260FF700: 
4LKDEADLOCKOBJ      java/lang/Object@0x00000000E3C88F58 
3LKDEADLOCKOWN    which is owned by: 
2LKDEADLOCKTHR  Thread "JobCourier7" (0x00000000305D4E00) 
3LKDEADLOCKWTR    which is waiting for: 
4LKDEADLOCKMON      sys_mon_t:0x00000001260FF508 infl_mon_t: 0x00000001260FF550: 
4LKDEADLOCKOBJ      java/lang/Thread$ThreadLock@0x00000000E0791DE8 
3LKDEADLOCKOWN    which is owned by: 
2LKDEADLOCKTHR  Thread "InterruptTimer" (0x00000000305D1D00) 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
3XMTHREADINFO      "InterruptTimer" J9VMThread:0x00000000305D1D00, j9thread_t:0x0000000121095B70, java/lang/Thread:0x00000000E3C75AA8, state:B, prio=5 
3XMJAVALTHREAD            (java/lang/Thread getId:0xAF, isDaemon:true) 
3XMTHREADINFO1            (native thread ID:0x6B0023D, native priority:0x5, native policy:UNKNOWN, vmstate:B, vm thread flags:0x00000201) 
3XMCPUTIME               CPU usage total: 0.009449000 secs, user: 0.005123000 secs, system: 0.004326000 secs, current category="Application" 
3XMTHREADBLOCK     Blocked on: java/lang/Object@0x00000000E3C88F58 Owned by: "JobCourier7" (J9VMThread:0x00000000305D4E00, java/lang/Thread:0x00000000E0791838) 
3XMHEAPALLOC             Heap bytes allocated since last GC cycle=0 (0x0) 
3XMTHREADINFO3           Java callstack: 
4XESTACKTRACE                at java/nio/channels/spi/AbstractSelectableChannel.implCloseChannel(AbstractSelectableChannel.java:245) 
4XESTACKTRACE                at java/nio/channels/spi/AbstractInterruptibleChannel$1.interrupt(AbstractInterruptibleChannel.java:176) 
5XESTACKTRACE                   (entered lock: java/lang/Object@0x00000000E3CF5278, entry count: 1) 
4XESTACKTRACE                at java/lang/Thread.interrupt(Thread.java:559) 
5XESTACKTRACE                   (entered lock: java/lang/Thread$ThreadLock@0x00000000E0791DE8, entry count: 1) 
4XESTACKTRACE                at oracle/net/nt/TimeoutInterruptHandler$InterruptTask.run(TimeoutInterruptHandler.java:152) 
4XESTACKTRACE                at java/util/TimerThread.mainLoop(Timer.java:566) 
4XESTACKTRACE                at java/util/TimerThread.run(Timer.java:516) 
3XMTHREADINFO3           Native callstack: 
4XENATIVESTACK               _event_wait+0x344 (0x090000000052C3C8 [libpthread.a+0x173c8]) 
4XENATIVESTACK               _cond_wait_local+0x4dc (0x090000000053A920 [libpthread.a+0x25920]) 
4XENATIVESTACK               _cond_wait+0xc8 (0x090000000053AF0C [libpthread.a+0x25f0c]) 
4XENATIVESTACK               pthread_cond_wait+0x19c (0x090000000053BB60 [libpthread.a+0x26b60]) 
4XENATIVESTACK               (0x0900000002412F64 [libj9thr28.so+0x7f64]) 
4XENATIVESTACK               (0x0900000002412478 [libj9thr28.so+0x7478]) 
4XENATIVESTACK               (0x09000000022DAA38 [libj9vm28.so+0x15a38]) 
4XENATIVESTACK               (0x09000000022D974C [libj9vm28.so+0x1474c]) 
4XENATIVESTACK               (0x09000000022FBD80 [libj9vm28.so+0x36d80]) 
4XENATIVESTACK               (0x090000000239C9D8 [libj9vm28.so+0xd79d8]) 
4XENATIVESTACK               (0x09000000023153CC [libj9vm28.so+0x503cc]) 
4XENATIVESTACK               (0x09000000022C7AB4 [libj9vm28.so+0x2ab4]) 
4XENATIVESTACK               (0x090000000242BC80 [libj9prt28.so+0x2c80]) 
4XENATIVESTACK               (0x09000000022C78D4 [libj9vm28.so+0x28d4]) 
4XENATIVESTACK               (0x090000000240E85C [libj9thr28.so+0x385c]) 
4XENATIVESTACK               _pthread_body+0xf0 (0x0900000000518E14 [libpthread.a+0x3e14]) 
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> 
3XMTHREADINFO      "JobCourier7" J9VMThread:0x00000000305D4E00, j9thread_t:0x0000000123662068, java/lang/Thread:0x00000000E0791838, state:B, prio=5 
3XMJAVALTHREAD            (java/lang/Thread getId:0x25, isDaemon:false) 
3XMTHREADINFO1            (native thread ID:0x14303AD, native priority:0x5, native policy:UNKNOWN, vmstate:B, vm thread flags:0x00000201) 
3XMCPUTIME               CPU usage total: 0.267175000 secs, user: 0.212196000 secs, system: 0.054979000 secs, current category="Application" 
3XMTHREADBLOCK     Blocked on: java/lang/Thread$ThreadLock@0x00000000E0791DE8 Owned by: "InterruptTimer" (J9VMThread:0x00000000305D1D00, java/lang/Thread:0x00000000E3C75AA8) 
3XMHEAPALLOC             Heap bytes allocated since last GC cycle=0 (0x0) 
3XMTHREADINFO3           Java callstack: 
4XESTACKTRACE                at java/lang/Thread.blockedOn(Thread.java:1088) 
4XESTACKTRACE                at java/lang/Access.blockedOn(Access.java:41) 
4XESTACKTRACE                at java/nio/channels/spi/AbstractInterruptibleChannel.blockedOn(AbstractInterruptibleChannel.java:229) 
4XESTACKTRACE                at java/nio/channels/spi/AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:216) 
4XESTACKTRACE                at sun/nio/ch/SocketChannelImpl.connect(SocketChannelImpl.java:673) 
5XESTACKTRACE                   (entered lock: java/lang/Object@0x00000000E3C88F58, entry count: 1) 
5XESTACKTRACE                   (entered lock: java/lang/Object@0x00000000E3C88F68, entry count: 1) 
5XESTACKTRACE                   (entered lock: java/lang/Object@0x00000000E3C88F78, entry count: 1) 
4XESTACKTRACE                at java/nio/channels/SocketChannel.open(SocketChannel.java:200) 
4XESTACKTRACE                at oracle/net/nt/TimeoutSocketChannel.<init>(TimeoutSocketChannel.java:81) 
4XESTACKTRACE                at oracle/net/nt/TcpsNTAdapter.connect(TcpsNTAdapter.java:186) 
4XESTACKTRACE                at oracle/net/nt/ConnOption.connect(ConnOption.java:161) 
4XESTACKTRACE                at oracle/net/nt/ConnStrategy.execute(ConnStrategy.java:470) 
4XESTACKTRACE                at oracle/net/resolver/AddrResolution.resolveAndExecute(AddrResolution.java:521) 
4XESTACKTRACE                at oracle/net/ns/NSProtocol.establishConnection(NSProtocol.java:660) 
4XESTACKTRACE                at oracle/net/ns/NSProtocol.connect(NSProtocol.java:286) 
4XESTACKTRACE                at oracle/jdbc/driver/T4CConnection.connect(T4CConnection.java:1438) 
4XESTACKTRACE                at oracle/jdbc/driver/T4CConnection.logon(T4CConnection.java:518) 
4XESTACKTRACE                at oracle/jdbc/driver/PhysicalConnection.connect(PhysicalConnection.java:688) 
4XESTACKTRACE                at oracle/jdbc/driver/T4CDriverExtension.getConnection(T4CDriverExtension.java:39) 
4XESTACKTRACE                at oracle/jdbc/driver/OracleDriver.connect(OracleDriver.java:691) 
4XESTACKTRACE                at java/sql/DriverManager.getConnection(DriverManager.java:675) 
4XESTACKTRACE                at java/sql/DriverManager.getConnection(DriverManager.java:258) 


JDBC connection string is of the form jdbc:oracle:thin:@(DESCRIPTION=(FAILOVER=on)(CONNECT_TIMEOUT=5)(TRANSPORT_CONNECT_TIMEOUT=3000)(RETRY_COUNT=3)(ADDRESS_LIST=(LOAD_BALANCE=on)(ADDRESS=(PROTOCOL=TCPS)(HOST=<HOSTNAME1>)(PORT=<PORT>)(SECURITY=(SSL_SERVER_CERT_DN=\"<NAME>")))(ADDRESS=(PROTOCOL=TCPS)(HOST=<HOSTNAME2>)(PORT=<PORT>)(SECURITY=(SSL_SERVER_CERT_DN=\"<NAME>"))))(CONNECT_DATA=(SERVICE_NAME= <SERVICE_NAME>)))

This is happening on AIX platform with JRE with these details:

JAVAVERSION JRE 1.8.0 AIX ppc64-64 build (pap6480sr1-20150417_01(SR1) )
VMVERSION VM build R28_Java8_SR1_20150410_1531_B243669
JITVERSION tr.r14.java_20150402_88976.03
GCVERSION GC - R28_Java8_SR1_20150410_1531_B243669_CMPRSS
JITMODES JIT enabled, AOT enabled, FSD disabled, HCR disabled
RUNNINGAS Running as a standalone JVM







Changes

 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.