Vladislav Pyatkov created IGNITE-12818:
------------------------------------------
Summary: SoLinger is not set for reader-sockets in discovery
Key: IGNITE-12818
URL: https://issues.apache.org/jira/browse/IGNITE-12818
Project: Ignite
Issue Type: Bug
Reporter: Vladislav Pyatkov
{noformat}
Thread [name="tcp-disco-client-message-worker-#29%DPL_GRID%DplGridNodeName%",
id=543, state=RUNNABLE, blockCnt=0, waitCnt=109538]
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:111)
at java.net.SocketOutputStream.write(SocketOutputStream.java:155)
at sun.security.ssl.OutputRecord.writeBuffer(OutputRecord.java:431)
at sun.security.ssl.OutputRecord.write(OutputRecord.java:417)
at
sun.security.ssl.SSLSocketImpl.writeRecordInternal(SSLSocketImpl.java:879)
at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:850)
at sun.security.ssl.AppOutputStream.write(AppOutputStream.java:123)
- locked sun.security.ssl.AppOutputStream@6e6441c6
at java.io.OutputStream.write(OutputStream.java:75)
at
o.a.i.spi.discovery.tcp.TcpDiscoverySpi.writeToSocket(TcpDiscoverySpi.java:1613)
at
o.a.i.spi.discovery.tcp.ServerImpl$ClientMessageWorker.processMessage(ServerImpl.java:7281)
at
o.a.i.spi.discovery.tcp.ServerImpl$ClientMessageWorker.processMessage(ServerImpl.java:7156)
at
o.a.i.spi.discovery.tcp.ServerImpl$MessageWorker.body(ServerImpl.java:7538)
at o.a.i.i.util.worker.GridWorker.run(GridWorker.java:120)
at
o.a.i.spi.discovery.tcp.ServerImpl$MessageWorkerThread.body(ServerImpl.java:7469)
at o.a.i.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)
Thread [name="grid-timeout-worker-#39%DPL_GRID%DplGridNodeName%", id=230,
state=WAITING, blockCnt=49, waitCnt=902487]
Lock [object=java.util.concurrent.locks.ReentrantLock$NonfairSync@7dcea545,
ownerName=tcp-disco-client-message-worker-#29%DPL_GRID%DplGridNodeName%,
ownerId=543]
at sun.misc.Unsafe.park(Native Method)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199)
at
java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:209)
at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:285)
at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:848)
at sun.security.ssl.SSLSocketImpl.writeRecord(SSLSocketImpl.java:720)
at sun.security.ssl.SSLSocketImpl.sendAlert(SSLSocketImpl.java:2066)
at sun.security.ssl.SSLSocketImpl.warning(SSLSocketImpl.java:1893)
at sun.security.ssl.SSLSocketImpl.closeInternal(SSLSocketImpl.java:1656)
- locked sun.security.ssl.SSLSocketImpl@5c2090f8
at sun.security.ssl.SSLSocketImpl.close(SSLSocketImpl.java:1594)
at o.a.i.i.util.IgniteUtils.closeQuiet(IgniteUtils.java:4089)
at
o.a.i.spi.discovery.tcp.TcpDiscoverySpi$SocketTimeoutObject.onTimeout(TcpDiscoverySpi.java:2462)
at
o.a.i.i.processors.timeout.GridSpiTimeoutObject.onTimeout(GridSpiTimeoutObject.java:42)
at
o.a.i.i.processors.timeout.GridTimeoutProcessor$TimeoutWorker.body(GridTimeoutProcessor.java:279)
at o.a.i.i.util.worker.GridWorker.run(GridWorker.java:120)
at java.lang.Thread.run(Thread.java:748)
{noformat}
Need to use SoLinger for socket got through `sock = srvrSock.accept();` like it
used in `TcpDiscoverySpi#createSocket`.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)