IGNITE-6088 Socket#shutdownOutput in ServerImpl leads to UnsupportedOperationException on SSLSocket.
Signed-off-by: nikolay_tikhonov <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/4acbe0ef Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/4acbe0ef Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/4acbe0ef Branch: refs/heads/ignite-5578 Commit: 4acbe0ef860f7fb2f836e96c24b9cf59f1d7b4ae Parents: dd89aab Author: Evgenii Zhuravlev <[email protected]> Authored: Thu Aug 17 16:15:31 2017 +0300 Committer: nikolay_tikhonov <[email protected]> Committed: Fri Aug 18 14:30:12 2017 +0300 ---------------------------------------------------------------------- .../java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/4acbe0ef/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java index 504dbab..a6de34b 100644 --- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java @@ -57,6 +57,7 @@ import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicReference; import javax.net.ssl.SSLException; +import javax.net.ssl.SSLSocket; import org.apache.ignite.Ignite; import org.apache.ignite.IgniteCheckedException; import org.apache.ignite.IgniteException; @@ -5769,7 +5770,8 @@ class ServerImpl extends TcpDiscoveryImpl { spi.writeToSocket(sock, res, timeoutHelper.nextTimeoutChunk(spi.getSocketTimeout())); - sock.shutdownOutput(); + if (!(sock instanceof SSLSocket)) + sock.shutdownOutput(); if (log.isInfoEnabled()) log.info("Finished writing ping response " + "[rmtNodeId=" + msg.creatorNodeId() +
