diff --git itests/hive-unit/src/test/java/org/apache/hive/jdbc/miniHS2/TestHs2ConnectionMetricsBinary.java itests/hive-unit/src/test/java/org/apache/hive/jdbc/miniHS2/TestHs2ConnectionMetricsBinary.java index c823cb36e0..0338fb039a 100644 --- itests/hive-unit/src/test/java/org/apache/hive/jdbc/miniHS2/TestHs2ConnectionMetricsBinary.java +++ itests/hive-unit/src/test/java/org/apache/hive/jdbc/miniHS2/TestHs2ConnectionMetricsBinary.java @@ -19,6 +19,8 @@ import java.io.IOException; +import java.util.concurrent.TimeUnit; + import org.apache.hadoop.hive.common.metrics.common.MetricsFactory; import org.apache.hadoop.hive.common.metrics.metrics2.CodahaleMetrics; import org.apache.hadoop.hive.conf.HiveConf; @@ -58,13 +60,18 @@ public void testOpenConnectionMetrics() throws Exception { "-e", "show tables;"}; BeeLine beeLine = openBeeLineConnection(beelineArgs); + // wait a couple of sec to make sure the connection is open + TimeUnit.SECONDS.sleep(5); verifyConnectionMetrics(metrics.dumpJson(), 1, 1); beeLine.close(); + TimeUnit.SECONDS.sleep(5); verifyConnectionMetrics(metrics.dumpJson(), 0, 1); beeLine = openBeeLineConnection(beelineArgs); + TimeUnit.SECONDS.sleep(5); verifyConnectionMetrics(metrics.dumpJson(), 1, 2); beeLine.close(); + TimeUnit.SECONDS.sleep(5); verifyConnectionMetrics(metrics.dumpJson(), 0, 2); diff --git itests/hive-unit/src/test/java/org/apache/hive/jdbc/miniHS2/TestHs2ConnectionMetricsHttp.java itests/hive-unit/src/test/java/org/apache/hive/jdbc/miniHS2/TestHs2ConnectionMetricsHttp.java index 65889aae50..03b1917045 100644 --- itests/hive-unit/src/test/java/org/apache/hive/jdbc/miniHS2/TestHs2ConnectionMetricsHttp.java +++ itests/hive-unit/src/test/java/org/apache/hive/jdbc/miniHS2/TestHs2ConnectionMetricsHttp.java @@ -19,6 +19,7 @@ import java.util.HashMap; import java.util.Map; +import java.util.concurrent.TimeUnit; import org.apache.hadoop.hive.common.metrics.common.MetricsFactory; import org.apache.hadoop.hive.common.metrics.metrics2.CodahaleMetrics; @@ -59,7 +60,6 @@ public static void tearDown() { Hs2ConnectionMetrics.tearDown(); } - @Ignore("Flaky test. Should be re-enabled in HIVE-20578") @Test public void testOpenConnectionMetrics() throws Exception { CodahaleMetrics metrics = (CodahaleMetrics) MetricsFactory.getInstance(); @@ -67,19 +67,24 @@ public void testOpenConnectionMetrics() throws Exception { TCLIService.Client httpClient = getHttpClient(); TOpenSessionReq openSessionReq = new TOpenSessionReq(); TOpenSessionResp tOpenSessionResp = httpClient.OpenSession(openSessionReq); + // wait a couple of sec to make sure the connection is closed + TimeUnit.SECONDS.sleep(5); verifyConnectionMetrics(metrics.dumpJson(), 0, 1); TSessionHandle sessionHandle = tOpenSessionResp.getSessionHandle(); TCloseSessionReq closeSessionReq = new TCloseSessionReq(sessionHandle); httpClient.CloseSession(closeSessionReq); + TimeUnit.SECONDS.sleep(5); verifyConnectionMetrics(metrics.dumpJson(), 0, 2); tOpenSessionResp = httpClient.OpenSession(openSessionReq); + TimeUnit.SECONDS.sleep(5); verifyConnectionMetrics(metrics.dumpJson(), 0, 3); sessionHandle = tOpenSessionResp.getSessionHandle(); closeSessionReq = new TCloseSessionReq(sessionHandle); httpClient.CloseSession(closeSessionReq); + TimeUnit.SECONDS.sleep(5); verifyConnectionMetrics(metrics.dumpJson(), 0, 4); }