This is an automated email from the ASF dual-hosted git repository.
mpetrov pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git
The following commit(s) were added to refs/heads/master by this push:
new b21be217493 IGNITE-28097 Fixed unclosed socket if the client node
stopped during a reconnect (#12869)
b21be217493 is described below
commit b21be21749394ceebd6fe1a01aff9704e47d6aaa
Author: Mikhail Petrov <[email protected]>
AuthorDate: Wed Mar 11 13:18:07 2026 +0300
IGNITE-28097 Fixed unclosed socket if the client node stopped during a
reconnect (#12869)
---
.../org/apache/ignite/spi/IgniteSpiAdapter.java | 26 +++++------
.../ignite/spi/discovery/tcp/ServerImpl.java | 7 ++-
.../ignite/spi/discovery/tcp/TcpDiscoverySpi.java | 51 +++++++++++++++-------
.../ignite/internal/IgniteClientRejoinTest.java | 31 +++++++++----
.../IgniteDiscoveryMassiveNodeFailTest.java | 16 +++++--
.../dht/IgniteCacheTopologySplitAbstractTest.java | 18 +++++---
.../processors/rest/RestProcessorHangTest.java | 7 ++-
.../IgniteTcpCommunicationConnectOnInitTest.java | 19 +++++---
.../spi/discovery/tcp/BlockTcpDiscoverySpi.java | 2 +-
...cpClientDiscoverySpiFailureTimeoutSelfTest.java | 10 +++--
.../tcp/TcpClientDiscoverySpiSelfTest.java | 23 +++++++---
.../tcp/TcpClientDiscoveryUnresolvedHostTest.java | 8 ++--
.../tcp/TcpDiscoveryCoordinatorFailureTest.java | 9 ++--
.../discovery/tcp/TcpDiscoveryFailedJoinTest.java | 30 +++++++++----
.../tcp/TcpDiscoveryNetworkIssuesTest.java | 23 +++++++---
.../TcpDiscoveryPendingMessageDeliveryTest.java | 16 +++++--
.../tcp/TcpDiscoverySpiFailureTimeoutSelfTest.java | 16 ++++---
.../tcp/TcpDiscoverySpiReconnectDelayTest.java | 8 +++-
18 files changed, 218 insertions(+), 102 deletions(-)
diff --git
a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
index bcb5b00c7c4..bbf821e17d7 100644
--- a/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
+++ b/modules/core/src/main/java/org/apache/ignite/spi/IgniteSpiAdapter.java
@@ -35,8 +35,8 @@ import org.apache.ignite.cluster.ClusterNode;
import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.events.DiscoveryEvent;
import org.apache.ignite.events.Event;
+import org.apache.ignite.internal.GridKernalContext;
import org.apache.ignite.internal.IgniteEx;
-import org.apache.ignite.internal.IgniteKernal;
import org.apache.ignite.internal.IgniteNodeAttributes;
import org.apache.ignite.internal.managers.communication.GridMessageListener;
import org.apache.ignite.internal.managers.eventstorage.GridLocalEventListener;
@@ -952,22 +952,12 @@ public abstract class IgniteSpiAdapter implements
IgniteSpi {
/** {@inheritDoc} */
@Override public void addTimeoutObject(IgniteSpiTimeoutObject obj) {
- Ignite ignite0 = ignite;
-
- if (!(ignite0 instanceof IgniteKernal))
- throw new IgniteSpiException("Wrong Ignite instance is set: "
+ ignite0);
-
- ((IgniteEx)ignite0).context().timeout().addTimeoutObject(new
GridSpiTimeoutObject(obj));
+ context().timeout().addTimeoutObject(new
GridSpiTimeoutObject(obj));
}
/** {@inheritDoc} */
@Override public void removeTimeoutObject(IgniteSpiTimeoutObject obj) {
- Ignite ignite0 = ignite;
-
- if (!(ignite0 instanceof IgniteKernal))
- throw new IgniteSpiException("Wrong Ignite instance is set: "
+ ignite0);
-
- ((IgniteEx)ignite0).context().timeout().removeTimeoutObject(new
GridSpiTimeoutObject(obj));
+ context().timeout().removeTimeoutObject(new
GridSpiTimeoutObject(obj));
}
/** {@inheritDoc} */
@@ -1004,5 +994,15 @@ public abstract class IgniteSpiAdapter implements
IgniteSpi {
@Override public void
addMetricRegistryCreationListener(Consumer<ReadOnlyMetricRegistry> lsnr) {
// No-op.
}
+
+ /** */
+ private GridKernalContext context() {
+ Ignite ignite0 = ignite;
+
+ if (ignite0 == null)
+ throw new IgniteSpiException(isStopping() ? "The node is
stopping" : "The node is not yet started");
+
+ return ((IgniteEx)ignite0).context();
+ }
}
}
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 61052671449..9006c05df58 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
@@ -7460,10 +7460,13 @@ class ServerImpl extends TcpDiscoveryImpl {
* @param clientMsgWrk Client message worker to start.
* @return Whether connection was successful.
* @throws IOException If IO failed.
+ * @throws IgniteCheckedException If node is not yet initialized or is
stopping.
*/
@SuppressWarnings({"IfMayBeConditional"})
- private boolean
processJoinRequestMessage(TcpDiscoveryJoinRequestMessage msg,
- @Nullable ClientMessageWorker clientMsgWrk) throws IOException {
+ private boolean processJoinRequestMessage(
+ TcpDiscoveryJoinRequestMessage msg,
+ @Nullable ClientMessageWorker clientMsgWrk
+ ) throws IOException, IgniteCheckedException {
assert msg != null;
assert !msg.responded();
diff --git
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
index c91dffcb5e7..a4b7cb80c94 100644
---
a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
+++
b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpi.java
@@ -1573,9 +1573,12 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter
implements IgniteDiscovery
* @return Opened socket.
* @throws IOException If failed.
* @throws IgniteSpiOperationTimeoutException In case of timeout.
+ * @throws IgniteCheckedException If node is not yet initialized or is
stopping.
*/
- protected Socket openSocket(InetSocketAddress sockAddr,
IgniteSpiOperationTimeoutHelper timeoutHelper)
- throws IOException, IgniteSpiOperationTimeoutException {
+ protected Socket openSocket(
+ InetSocketAddress sockAddr,
+ IgniteSpiOperationTimeoutHelper timeoutHelper
+ ) throws IOException, IgniteSpiOperationTimeoutException,
IgniteCheckedException {
return openSocket(createSocket(), sockAddr, timeoutHelper);
}
@@ -1588,10 +1591,13 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter
implements IgniteDiscovery
* @return Connected socket.
* @throws IOException If failed.
* @throws IgniteSpiOperationTimeoutException In case of timeout.
+ * @throws IgniteCheckedException If node is not yet initialized or is
stopping.
*/
- protected Socket openSocket(Socket sock, InetSocketAddress remAddr,
IgniteSpiOperationTimeoutHelper timeoutHelper)
- throws IOException, IgniteSpiOperationTimeoutException {
-
+ protected Socket openSocket(
+ Socket sock,
+ InetSocketAddress remAddr,
+ IgniteSpiOperationTimeoutHelper timeoutHelper
+ ) throws IOException, IgniteSpiOperationTimeoutException,
IgniteCheckedException {
assert remAddr != null;
try {
@@ -1608,7 +1614,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter
implements IgniteDiscovery
return sock;
}
- catch (IOException | IgniteSpiOperationTimeoutException e) {
+ catch (IOException | IgniteCheckedException e) {
if (sock != null)
U.closeQuiet(sock);
@@ -1686,8 +1692,14 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter
implements IgniteDiscovery
* @param data Raw data to write.
* @param timeout Socket write timeout.
* @throws IOException If IO failed or write timed out.
+ * @throws IgniteCheckedException If node is not yet initialized or is
stopping.
*/
- protected void writeToSocket(Socket sock, TcpDiscoveryAbstractMessage msg,
byte[] data, long timeout) throws IOException {
+ protected void writeToSocket(
+ Socket sock,
+ TcpDiscoveryAbstractMessage msg,
+ byte[] data,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
assert sock != null;
assert data != null;
@@ -1771,9 +1783,14 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter
implements IgniteDiscovery
* @param res Integer response.
* @param timeout Socket timeout.
* @throws IOException If IO failed or write timed out.
+ * @throws IgniteCheckedException If node is not yet initialized or is
stopping.
*/
- protected void writeToSocket(TcpDiscoveryAbstractMessage msg, Socket sock,
int res, long timeout)
- throws IOException {
+ protected void writeToSocket(
+ TcpDiscoveryAbstractMessage msg,
+ Socket sock,
+ int res,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
assert sock != null;
try (SocketTimeoutObject ignored = startTimer(sock, timeout)) {
@@ -1799,8 +1816,7 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter
implements IgniteDiscovery
* @throws IOException If IO failed or read timed out.
* @throws IgniteCheckedException If unmarshalling failed.
*/
- protected <T> T readMessage(TcpDiscoveryIoSession ses, long timeout)
throws IOException,
- IgniteCheckedException {
+ protected <T> T readMessage(TcpDiscoveryIoSession ses, long timeout)
throws IOException, IgniteCheckedException {
Socket sock = ses.socket();
assert sock != null;
@@ -2445,12 +2461,17 @@ public class TcpDiscoverySpi extends IgniteSpiAdapter
implements IgniteDiscovery
}
/** Starts a timer for a socket operation. */
- private SocketTimeoutObject startTimer(Socket sock, long timeout) {
- SocketTimeoutObject obj = new SocketTimeoutObject(sock,
U.currentTimeMillis() + timeout);
+ private SocketTimeoutObject startTimer(Socket sock, long timeout) throws
IgniteCheckedException {
+ try {
+ SocketTimeoutObject obj = new SocketTimeoutObject(sock,
U.currentTimeMillis() + timeout);
- addTimeoutObject(obj);
+ addTimeoutObject(obj);
- return obj;
+ return obj;
+ }
+ catch (IgniteSpiException e) {
+ throw new IgniteCheckedException("Failed to perform socket
operation", e);
+ }
}
/**
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientRejoinTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientRejoinTest.java
index b29a8171fbc..4a5ced6eb64 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientRejoinTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/IgniteClientRejoinTest.java
@@ -42,7 +42,6 @@ import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.lang.IgniteInClosure;
import org.apache.ignite.plugin.extensions.communication.Message;
import org.apache.ignite.spi.IgniteSpiException;
-import org.apache.ignite.spi.IgniteSpiOperationTimeoutException;
import org.apache.ignite.spi.IgniteSpiOperationTimeoutHelper;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoveryIoSession;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
@@ -354,8 +353,12 @@ public class IgniteClientRejoinTest extends
GridCommonAbstractTest {
*/
private class DiscoverySpi extends TcpDiscoverySpi {
/** {@inheritDoc} */
- @Override protected void writeToSocket(Socket sock,
TcpDiscoveryAbstractMessage msg, byte[] data,
- long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ Socket sock,
+ TcpDiscoveryAbstractMessage msg,
+ byte[] data,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
if (blockAll || block && sock.getPort() == 47500)
throw new SocketException("Test discovery exception");
@@ -363,8 +366,11 @@ public class IgniteClientRejoinTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override protected void writeMessage(TcpDiscoveryIoSession ses,
TcpDiscoveryAbstractMessage msg,
- long timeout) throws IOException, IgniteCheckedException {
+ @Override protected void writeMessage(
+ TcpDiscoveryIoSession ses,
+ TcpDiscoveryAbstractMessage msg,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
if (blockAll || block && ses.socket().getPort() == 47500)
throw new SocketException("Test discovery exception");
@@ -372,8 +378,12 @@ public class IgniteClientRejoinTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override protected void writeToSocket(TcpDiscoveryAbstractMessage
msg, Socket sock, int res,
- long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ TcpDiscoveryAbstractMessage msg,
+ Socket sock,
+ int res,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
if (blockAll || block && sock.getPort() == 47500)
throw new SocketException("Test discovery exception");
@@ -381,8 +391,11 @@ public class IgniteClientRejoinTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override protected Socket openSocket(Socket sock, InetSocketAddress
remAddr,
- IgniteSpiOperationTimeoutHelper timeoutHelper) throws IOException,
IgniteSpiOperationTimeoutException {
+ @Override protected Socket openSocket(
+ Socket sock,
+ InetSocketAddress remAddr,
+ IgniteSpiOperationTimeoutHelper timeoutHelper
+ ) throws IOException, IgniteCheckedException {
if (blockAll || block && sock.getPort() == 47500)
throw new SocketException("Test discovery exception");
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/IgniteDiscoveryMassiveNodeFailTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/IgniteDiscoveryMassiveNodeFailTest.java
index b69d65446ff..f69d068efe1 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/IgniteDiscoveryMassiveNodeFailTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/IgniteDiscoveryMassiveNodeFailTest.java
@@ -302,8 +302,12 @@ public class IgniteDiscoveryMassiveNodeFailTest extends
GridCommonAbstractTest {
*/
private class FailDiscoverySpi extends TcpDiscoverySpi {
/** {@inheritDoc} */
- @Override protected void writeToSocket(Socket sock,
TcpDiscoveryAbstractMessage msg, byte[] data,
- long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ Socket sock,
+ TcpDiscoveryAbstractMessage msg,
+ byte[] data,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
assertNotFailedNode(sock);
if (isDrop(msg))
@@ -336,8 +340,12 @@ public class IgniteDiscoveryMassiveNodeFailTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override protected void writeToSocket(TcpDiscoveryAbstractMessage
msg, Socket sock, int res,
- long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ TcpDiscoveryAbstractMessage msg,
+ Socket sock,
+ int res,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
assertNotFailedNode(sock);
if (isDrop(msg))
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCacheTopologySplitAbstractTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCacheTopologySplitAbstractTest.java
index fdfb3b90cd3..14cb10543ca 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCacheTopologySplitAbstractTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/distributed/dht/IgniteCacheTopologySplitAbstractTest.java
@@ -35,7 +35,6 @@ import org.apache.ignite.internal.util.typedef.G;
import org.apache.ignite.lang.IgniteBiPredicate;
import org.apache.ignite.lang.IgnitePredicate;
import org.apache.ignite.plugin.extensions.communication.Message;
-import org.apache.ignite.spi.IgniteSpiOperationTimeoutException;
import org.apache.ignite.spi.IgniteSpiOperationTimeoutHelper;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoveryIoSession;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
@@ -208,8 +207,11 @@ public abstract class IgniteCacheTopologySplitAbstractTest
extends GridCommonAbs
}
/** {@inheritDoc} */
- @Override protected Socket openSocket(Socket sock, InetSocketAddress
remAddr,
- IgniteSpiOperationTimeoutHelper timeoutHelper) throws IOException,
IgniteSpiOperationTimeoutException {
+ @Override protected Socket openSocket(
+ Socket sock,
+ InetSocketAddress remAddr,
+ IgniteSpiOperationTimeoutHelper timeoutHelper
+ ) throws IOException, IgniteCheckedException {
checkSegmented(remAddr,
timeoutHelper.nextTimeoutChunk(getSocketTimeout()));
return super.openSocket(sock, remAddr, timeoutHelper);
@@ -221,7 +223,7 @@ public abstract class IgniteCacheTopologySplitAbstractTest
extends GridCommonAbs
TcpDiscoveryAbstractMessage msg,
byte[] data,
long timeout
- ) throws IOException {
+ ) throws IOException, IgniteCheckedException {
checkSegmented((InetSocketAddress)sock.getRemoteSocketAddress(),
timeout);
super.writeToSocket(sock, msg, data, timeout);
@@ -237,8 +239,12 @@ public abstract class IgniteCacheTopologySplitAbstractTest
extends GridCommonAbs
}
/** {@inheritDoc} */
- @Override protected void writeToSocket(TcpDiscoveryAbstractMessage
msg, Socket sock, int res,
- long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ TcpDiscoveryAbstractMessage msg,
+ Socket sock,
+ int res,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
checkSegmented((InetSocketAddress)sock.getRemoteSocketAddress(),
timeout);
super.writeToSocket(msg, sock, res, timeout);
diff --git
a/modules/core/src/test/java/org/apache/ignite/internal/processors/rest/RestProcessorHangTest.java
b/modules/core/src/test/java/org/apache/ignite/internal/processors/rest/RestProcessorHangTest.java
index 124934a77d4..1fb395f619f 100644
---
a/modules/core/src/test/java/org/apache/ignite/internal/processors/rest/RestProcessorHangTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/internal/processors/rest/RestProcessorHangTest.java
@@ -72,7 +72,12 @@ public class RestProcessorHangTest extends
GridCommonAbstractTest {
// Discovery spi that never allows connecting.
TestTcpDiscoverySpi discoSpi = new TestTcpDiscoverySpi() {
- @Override protected void writeToSocket(TcpDiscoveryAbstractMessage
msg, Socket sock, int res, long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ TcpDiscoveryAbstractMessage msg,
+ Socket sock,
+ int res,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
try {
// Wait until request is added to rest processor.
latch.await();
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/IgniteTcpCommunicationConnectOnInitTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/IgniteTcpCommunicationConnectOnInitTest.java
index ab8022dbdd2..5955faaf9a9 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/IgniteTcpCommunicationConnectOnInitTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/communication/tcp/IgniteTcpCommunicationConnectOnInitTest.java
@@ -33,7 +33,6 @@ import
org.apache.ignite.internal.util.nio.GridNioServerListenerAdapter;
import org.apache.ignite.internal.util.nio.GridNioSession;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.spi.IgniteSpiException;
-import org.apache.ignite.spi.IgniteSpiOperationTimeoutException;
import org.apache.ignite.spi.IgniteSpiOperationTimeoutHelper;
import org.apache.ignite.spi.communication.tcp.messages.HandshakeWaitMessage;
import org.apache.ignite.spi.discovery.tcp.TcpDiscoveryIoSession;
@@ -183,7 +182,7 @@ public class IgniteTcpCommunicationConnectOnInitTest
extends GridCommonAbstractT
@Override protected Socket openSocket(
InetSocketAddress sockAddr,
IgniteSpiOperationTimeoutHelper timeoutHelper
- ) throws IOException, IgniteSpiOperationTimeoutException {
+ ) throws IOException, IgniteCheckedException {
awaitLatch();
return super.openSocket(sockAddr, timeoutHelper);
@@ -194,14 +193,19 @@ public class IgniteTcpCommunicationConnectOnInitTest
extends GridCommonAbstractT
Socket sock,
InetSocketAddress remAddr,
IgniteSpiOperationTimeoutHelper timeoutHelper
- ) throws IOException, IgniteSpiOperationTimeoutException {
+ ) throws IOException, IgniteCheckedException {
awaitLatch();
return super.openSocket(sock, remAddr, timeoutHelper);
}
/** {@inheritDoc} */
- @Override protected void writeToSocket(Socket sock,
TcpDiscoveryAbstractMessage msg, byte[] data, long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ Socket sock,
+ TcpDiscoveryAbstractMessage msg,
+ byte[] data,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
awaitLatch();
super.writeToSocket(sock, msg, data, timeout);
@@ -219,7 +223,12 @@ public class IgniteTcpCommunicationConnectOnInitTest
extends GridCommonAbstractT
}
/** {@inheritDoc} */
- @Override protected void writeToSocket(TcpDiscoveryAbstractMessage
msg, Socket sock, int res, long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ TcpDiscoveryAbstractMessage msg,
+ Socket sock,
+ int res,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
awaitLatch();
super.writeToSocket(msg, sock, res, timeout);
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/BlockTcpDiscoverySpi.java
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/BlockTcpDiscoverySpi.java
index ae34c8e4160..020d5f78f23 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/BlockTcpDiscoverySpi.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/BlockTcpDiscoverySpi.java
@@ -72,7 +72,7 @@ public class BlockTcpDiscoverySpi extends TestTcpDiscoverySpi
{
TcpDiscoveryAbstractMessage msg,
byte[] data,
long timeout
- ) throws IOException {
+ ) throws IOException, IgniteCheckedException {
if (spiCtx != null)
apply(spiCtx.localNode(), msg);
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiFailureTimeoutSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiFailureTimeoutSelfTest.java
index 7eef5a2739b..fce28c1f2a4 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiFailureTimeoutSelfTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiFailureTimeoutSelfTest.java
@@ -452,7 +452,7 @@ public class TcpClientDiscoverySpiFailureTimeoutSelfTest
extends TcpClientDiscov
TcpDiscoveryAbstractMessage msg,
byte[] data,
long timeout
- ) throws IOException {
+ ) throws IOException, IgniteCheckedException {
if (writeToSocketDelay > 0) {
try {
U.dumpStack(log, "Before sleep [msg=" + msg +
@@ -472,9 +472,11 @@ public class TcpClientDiscoverySpiFailureTimeoutSelfTest
extends TcpClientDiscov
}
/** */
- @Override protected void writeMessage(TcpDiscoveryIoSession ses,
+ @Override protected void writeMessage(
+ TcpDiscoveryIoSession ses,
TcpDiscoveryAbstractMessage msg,
- long timeout) throws IOException, IgniteCheckedException {
+ long timeout
+ ) throws IOException, IgniteCheckedException {
if (writeToSocketDelay > 0) {
try {
U.dumpStack(log, "Before sleep [msg=" + msg + ']');
@@ -498,7 +500,7 @@ public class TcpClientDiscoverySpiFailureTimeoutSelfTest
extends TcpClientDiscov
Socket sock,
int res,
long timeout
- ) throws IOException {
+ ) throws IOException, IgniteCheckedException {
if (writeToSocketDelay > 0) {
try {
U.dumpStack(log, "Before sleep [msg=" + msg + ']');
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiSelfTest.java
index 6ca4782c65c..8bc4664977a 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiSelfTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoverySpiSelfTest.java
@@ -61,7 +61,6 @@ import org.apache.ignite.lang.IgnitePredicate;
import org.apache.ignite.plugin.segmentation.SegmentationPolicy;
import org.apache.ignite.resources.IgniteInstanceResource;
import org.apache.ignite.spi.IgniteSpiException;
-import org.apache.ignite.spi.IgniteSpiOperationTimeoutException;
import org.apache.ignite.spi.IgniteSpiOperationTimeoutHelper;
import org.apache.ignite.spi.IgniteSpiThread;
import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi;
@@ -2587,8 +2586,12 @@ public class TcpClientDiscoverySpiSelfTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override protected void writeToSocket(Socket sock,
TcpDiscoveryAbstractMessage msg, byte[] msgBytes,
- long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ Socket sock,
+ TcpDiscoveryAbstractMessage msg,
+ byte[] msgBytes,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
waitFor(writeLock);
if (!onMessage(sock, msg))
@@ -2633,8 +2636,10 @@ public class TcpClientDiscoverySpiSelfTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override protected Socket openSocket(InetSocketAddress sockAddr,
- IgniteSpiOperationTimeoutHelper timeoutHelper) throws IOException,
IgniteSpiOperationTimeoutException {
+ @Override protected Socket openSocket(
+ InetSocketAddress sockAddr,
+ IgniteSpiOperationTimeoutHelper timeoutHelper
+ ) throws IOException, IgniteCheckedException {
waitFor(openSockLock);
return super.openSocket(sockAddr, timeoutHelper);
@@ -2670,8 +2675,12 @@ public class TcpClientDiscoverySpiSelfTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override protected void writeToSocket(TcpDiscoveryAbstractMessage
msg, Socket sock, int res, long timeout)
- throws IOException {
+ @Override protected void writeToSocket(
+ TcpDiscoveryAbstractMessage msg,
+ Socket sock,
+ int res,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
if (delayJoinAckFor != null && msg instanceof
TcpDiscoveryJoinRequestMessage) {
TcpDiscoveryJoinRequestMessage msg0 =
(TcpDiscoveryJoinRequestMessage)msg;
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoveryUnresolvedHostTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoveryUnresolvedHostTest.java
index b0249c39513..de4dd6f7b0a 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoveryUnresolvedHostTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpClientDiscoveryUnresolvedHostTest.java
@@ -86,9 +86,11 @@ public class TcpClientDiscoveryUnresolvedHostTest extends
GridCommonAbstractTest
}
/** {@inheritDoc} */
- @Override protected Socket openSocket(Socket sock, InetSocketAddress
remAddr, IgniteSpiOperationTimeoutHelper timeoutHelper)
- throws IOException, IgniteSpiOperationTimeoutException {
-
+ @Override protected Socket openSocket(
+ Socket sock,
+ InetSocketAddress remAddr,
+ IgniteSpiOperationTimeoutHelper timeoutHelper
+ ) throws IOException, IgniteCheckedException {
try {
return super.openSocket(sock, remAddr, timeoutHelper);
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryCoordinatorFailureTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryCoordinatorFailureTest.java
index 479cee26f66..2421a74c181 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryCoordinatorFailureTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryCoordinatorFailureTest.java
@@ -30,7 +30,6 @@ import org.apache.ignite.configuration.IgniteConfiguration;
import org.apache.ignite.internal.IgniteEx;
import org.apache.ignite.internal.IgniteInternalFuture;
import org.apache.ignite.internal.util.typedef.F;
-import org.apache.ignite.spi.IgniteSpiOperationTimeoutException;
import org.apache.ignite.spi.IgniteSpiOperationTimeoutHelper;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryAbstractMessage;
@@ -209,7 +208,7 @@ public class TcpDiscoveryCoordinatorFailureTest extends
GridCommonAbstractTest {
@Override protected Socket openSocket(
InetSocketAddress sockAddr,
IgniteSpiOperationTimeoutHelper timeoutHelper
- ) throws IOException, IgniteSpiOperationTimeoutException {
+ ) throws IOException, IgniteCheckedException {
checkStall();
return super.openSocket(sockAddr, timeoutHelper);
@@ -220,7 +219,7 @@ public class TcpDiscoveryCoordinatorFailureTest extends
GridCommonAbstractTest {
Socket sock,
InetSocketAddress remAddr,
IgniteSpiOperationTimeoutHelper timeoutHelper
- ) throws IOException, IgniteSpiOperationTimeoutException {
+ ) throws IOException, IgniteCheckedException {
checkStall();
return super.openSocket(sock, remAddr, timeoutHelper);
@@ -292,7 +291,7 @@ public class TcpDiscoveryCoordinatorFailureTest extends
GridCommonAbstractTest {
TcpDiscoveryAbstractMessage msg,
byte[] data,
long timeout
- ) throws IOException {
+ ) throws IOException, IgniteCheckedException {
if (isDrop(msg)) {
// Replace logic routine message with a stub to update
last-sent-time to avoid segmentation on
// connRecoveryTimeout.
@@ -323,7 +322,7 @@ public class TcpDiscoveryCoordinatorFailureTest extends
GridCommonAbstractTest {
Socket sock,
int res,
long timeout
- ) throws IOException {
+ ) throws IOException, IgniteCheckedException {
if (isDrop(msg)) {
// Replace logic routine message with a stub to update
last-sent-time to avoid segmentation on
// connRecoveryTimeout.
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryFailedJoinTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryFailedJoinTest.java
index e1e647c01e6..9b6b8e4aa2f 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryFailedJoinTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryFailedJoinTest.java
@@ -31,7 +31,6 @@ import
org.apache.ignite.internal.processors.query.DummyQueryIndexing;
import org.apache.ignite.internal.processors.query.GridQueryProcessor;
import org.apache.ignite.internal.util.GridSpinBusyLock;
import org.apache.ignite.internal.util.typedef.internal.U;
-import org.apache.ignite.spi.IgniteSpiOperationTimeoutException;
import org.apache.ignite.spi.IgniteSpiOperationTimeoutHelper;
import org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder;
import
org.apache.ignite.spi.discovery.tcp.messages.TcpDiscoveryAbstractMessage;
@@ -168,8 +167,10 @@ public class TcpDiscoveryFailedJoinTest extends
GridCommonAbstractTest {
*/
private static class FailTcpDiscoverySpi extends TcpDiscoverySpi {
/** {@inheritDoc} */
- @Override protected Socket openSocket(InetSocketAddress sockAddr,
- IgniteSpiOperationTimeoutHelper timeoutHelper) throws IOException,
IgniteSpiOperationTimeoutException {
+ @Override protected Socket openSocket(
+ InetSocketAddress sockAddr,
+ IgniteSpiOperationTimeoutHelper timeoutHelper
+ ) throws IOException, IgniteCheckedException {
if (sockAddr.getPort() == FAIL_PORT)
throw new SocketException("Connection refused");
@@ -177,8 +178,11 @@ public class TcpDiscoveryFailedJoinTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override protected Socket openSocket(Socket sock, InetSocketAddress
remAddr,
- IgniteSpiOperationTimeoutHelper timeoutHelper) throws IOException,
IgniteSpiOperationTimeoutException {
+ @Override protected Socket openSocket(
+ Socket sock,
+ InetSocketAddress remAddr,
+ IgniteSpiOperationTimeoutHelper timeoutHelper
+ ) throws IOException, IgniteCheckedException {
if (remAddr.getPort() == FAIL_PORT)
throw new SocketException("Connection refused");
@@ -191,8 +195,12 @@ public class TcpDiscoveryFailedJoinTest extends
GridCommonAbstractTest {
*/
private static class DropTcpDiscoverySpi extends TcpDiscoverySpi {
/** {@inheritDoc} */
- @Override protected void writeToSocket(Socket sock,
TcpDiscoveryAbstractMessage msg, byte[] data,
- long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ Socket sock,
+ TcpDiscoveryAbstractMessage msg,
+ byte[] data,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
if (sock.getPort() != FAIL_PORT)
super.writeToSocket(sock, msg, data, timeout);
}
@@ -205,8 +213,12 @@ public class TcpDiscoveryFailedJoinTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override protected void writeToSocket(TcpDiscoveryAbstractMessage
msg, Socket sock, int res,
- long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ TcpDiscoveryAbstractMessage msg,
+ Socket sock,
+ int res,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
if (sock.getPort() != FAIL_PORT)
super.writeToSocket(msg, sock, res, timeout);
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryNetworkIssuesTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryNetworkIssuesTest.java
index 60db3be1436..4175f0b61fa 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryNetworkIssuesTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryNetworkIssuesTest.java
@@ -49,7 +49,6 @@ import org.apache.ignite.internal.util.typedef.F;
import org.apache.ignite.internal.util.typedef.G;
import org.apache.ignite.internal.util.typedef.internal.U;
import org.apache.ignite.internal.util.worker.GridWorker;
-import org.apache.ignite.spi.IgniteSpiOperationTimeoutException;
import org.apache.ignite.spi.IgniteSpiOperationTimeoutHelper;
import org.apache.ignite.spi.communication.CommunicationSpi;
import org.apache.ignite.spi.communication.tcp.internal.GridNioServerWrapper;
@@ -199,8 +198,10 @@ public class TcpDiscoveryNetworkIssuesTest extends
GridCommonAbstractTest {
return super.readReceipt(sock, timeout);
}
- @Override protected Socket openSocket(InetSocketAddress sockAddr,
- IgniteSpiOperationTimeoutHelper timeoutHelper) throws
IOException, IgniteSpiOperationTimeoutException {
+ @Override protected Socket openSocket(
+ InetSocketAddress sockAddr,
+ IgniteSpiOperationTimeoutHelper timeoutHelper
+ ) throws IOException, IgniteCheckedException {
if (netBroken.get() && sockAddr.getPort() == NODE_4_PORT)
throw new SocketTimeoutException("connect timed out");
@@ -617,8 +618,12 @@ public class TcpDiscoveryNetworkIssuesTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override protected void writeToSocket(TcpDiscoveryAbstractMessage
msg, Socket sock, int res,
- long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ TcpDiscoveryAbstractMessage msg,
+ Socket sock,
+ int res,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
if (dropMsg(sock))
return;
@@ -644,8 +649,12 @@ public class TcpDiscoveryNetworkIssuesTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override protected void writeToSocket(Socket sock,
TcpDiscoveryAbstractMessage msg, byte[] data,
- long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ Socket sock,
+ TcpDiscoveryAbstractMessage msg,
+ byte[] data,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
if (dropMsg(sock))
return;
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryPendingMessageDeliveryTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryPendingMessageDeliveryTest.java
index e388778cf1b..30f7ad478f4 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryPendingMessageDeliveryTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoveryPendingMessageDeliveryTest.java
@@ -253,8 +253,12 @@ public class TcpDiscoveryPendingMessageDeliveryTest
extends GridCommonAbstractTe
*/
private class DyingDiscoverySpi extends TcpDiscoverySpi {
/** {@inheritDoc} */
- @Override protected void writeToSocket(Socket sock,
TcpDiscoveryAbstractMessage msg, byte[] data,
- long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ Socket sock,
+ TcpDiscoveryAbstractMessage msg,
+ byte[] data,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
if (!blockMsgs)
super.writeToSocket(sock, msg, data, timeout);
}
@@ -267,8 +271,12 @@ public class TcpDiscoveryPendingMessageDeliveryTest
extends GridCommonAbstractTe
}
/** {@inheritDoc} */
- @Override protected void writeToSocket(TcpDiscoveryAbstractMessage
msg, Socket sock, int res,
- long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ TcpDiscoveryAbstractMessage msg,
+ Socket sock,
+ int res,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
if (!blockMsgs)
super.writeToSocket(msg, sock, res, timeout);
}
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiFailureTimeoutSelfTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiFailureTimeoutSelfTest.java
index 55f83d72fc6..b7d34e25441 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiFailureTimeoutSelfTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiFailureTimeoutSelfTest.java
@@ -263,9 +263,11 @@ public class TcpDiscoverySpiFailureTimeoutSelfTest extends
AbstractDiscoverySelf
/** {@inheritDoc} */
- @Override protected Socket openSocket(Socket sock, InetSocketAddress
sockAddr,
- IgniteSpiOperationTimeoutHelper timeoutHelper)
- throws IOException, IgniteSpiOperationTimeoutException {
+ @Override protected Socket openSocket(
+ Socket sock,
+ InetSocketAddress sockAddr,
+ IgniteSpiOperationTimeoutHelper timeoutHelper
+ ) throws IOException, IgniteCheckedException {
if (openSockTimeout) {
err = new IgniteSpiOperationTimeoutException("Timeout:
openSocketTimeout");
@@ -332,8 +334,12 @@ public class TcpDiscoverySpiFailureTimeoutSelfTest extends
AbstractDiscoverySelf
}
/** {@inheritDoc} */
- @Override protected void writeToSocket(TcpDiscoveryAbstractMessage
msg, Socket sock, int res, long timeout)
- throws IOException {
+ @Override protected void writeToSocket(
+ TcpDiscoveryAbstractMessage msg,
+ Socket sock,
+ int res,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
if (cntConnCheckMsg && msg instanceof
TcpDiscoveryConnectionCheckMessage)
connCheckStatusMsgCntReceived++;
diff --git
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiReconnectDelayTest.java
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiReconnectDelayTest.java
index 5a0726e7a60..4191afddc4e 100644
---
a/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiReconnectDelayTest.java
+++
b/modules/core/src/test/java/org/apache/ignite/spi/discovery/tcp/TcpDiscoverySpiReconnectDelayTest.java
@@ -409,8 +409,12 @@ public class TcpDiscoverySpiReconnectDelayTest extends
GridCommonAbstractTest {
}
/** {@inheritDoc} */
- @Override protected void writeToSocket(TcpDiscoveryAbstractMessage
msg, Socket sock, int res,
- long timeout) throws IOException {
+ @Override protected void writeToSocket(
+ TcpDiscoveryAbstractMessage msg,
+ Socket sock,
+ int res,
+ long timeout
+ ) throws IOException, IgniteCheckedException {
if (msg instanceof TcpDiscoveryJoinRequestMessage &&
failJoinReqRes.getAndDecrement() > 0)
res = RES_WAIT;