From 74c4b6a91adf4bf770742871740ccad80b54d4e7 Mon Sep 17 00:00:00 2001 From: Gabor Szadovszky Date: Wed, 26 Oct 2016 14:42:39 +0200 Subject: [PATCH] AVRO-1943 - Flaky test: TestNettyServerWithCompression.testConnectionsCount --- .../java/org/apache/avro/ipc/TestNettyServer.java | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/lang/java/ipc/src/test/java/org/apache/avro/ipc/TestNettyServer.java b/lang/java/ipc/src/test/java/org/apache/avro/ipc/TestNettyServer.java index 14981c3f11e..030e945730d 100644 --- a/lang/java/ipc/src/test/java/org/apache/avro/ipc/TestNettyServer.java +++ b/lang/java/ipc/src/test/java/org/apache/avro/ipc/TestNettyServer.java @@ -24,12 +24,11 @@ import java.net.InetSocketAddress; import java.net.Socket; -import java.net.UnknownHostException; import java.nio.charset.Charset; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; -import junit.framework.Assert; +import org.junit.Assert; import org.apache.avro.ipc.specific.SpecificRequestor; import org.apache.avro.ipc.specific.SpecificResponder; @@ -149,7 +148,16 @@ public void testConnectionsCount() throws Exception { proxy2.fireandforget(createMessage()); Assert.assertEquals(2, ((NettyServer) server).getNumActiveConnections()); transceiver2.close(); - Assert.assertEquals(1, ((NettyServer) server).getNumActiveConnections()); + + // Check the active connections with some retries as closing at the client + // side might not take affect on the server side immediately + int numActiveConnections = ((NettyServer) server).getNumActiveConnections(); + for (int i = 0; i < 50 && numActiveConnections == 2; ++i) { + System.out.println("Server still have 2 active connections; retrying..."); + Thread.sleep(100); + numActiveConnections = ((NettyServer) server).getNumActiveConnections(); + } + Assert.assertEquals(1, numActiveConnections); } private Message createMessage() {