Skip to content

Commit 7dd6143

Browse files
GEODE-9536: Disable client version test on Windows (#6971)
PROBLEM When a server receives a connection request with an unrecognized client version, it sends an informative reply and immediately closes the socket. In this situation, the client wants to throw a `ServerRefusedConnectionException` with a message that includes the server's informative reply. On Windows, when the client attempts to read the server's reply, the socket throws a `SocketException` with the message "Connection reset". As a result, the caller never receives the informative `ServerRefusedConnectionException`. SOLUTION Disable this test on Windows until the underlying issue is fixed. See https://issues.apache.org/jira/browse/GEODE-9698 NOTE This prepares for an upcoming PR to run all distributed tests (except explicitly ignored ones like these) on Windows.
1 parent e9320c5 commit 7dd6143

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

geode-core/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/BackwardCompatibilityHigherVersionClientDUnitTest.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424

2525
import java.util.Properties;
2626

27+
import org.junit.ClassRule;
2728
import org.junit.Test;
2829
import org.junit.experimental.categories.Category;
2930

@@ -48,12 +49,17 @@
4849
import org.apache.geode.test.dunit.VM;
4950
import org.apache.geode.test.dunit.internal.JUnit4DistributedTestCase;
5051
import org.apache.geode.test.junit.categories.ClientServerTest;
52+
import org.apache.geode.test.junit.rules.IgnoreOnWindowsRule;
5153

5254
/**
5355
* Test to verify that server responds to a higher versioned client.
5456
*/
5557
@Category({ClientServerTest.class})
5658
public class BackwardCompatibilityHigherVersionClientDUnitTest extends JUnit4DistributedTestCase {
59+
// On Windows, when the server closes the socket, the client can't read the server's reply. The
60+
// client quietly ignores the server's reply rather than throwing the required exception.
61+
@ClassRule
62+
public static IgnoreOnWindowsRule ignoreOnWindowsRule = new IgnoreOnWindowsRule();
5763

5864
/** the cache */
5965
private static Cache cache = null;

0 commit comments

Comments
 (0)