From 50a74e235e083cfb05b99c350badc52857447792 Mon Sep 17 00:00:00 2001 From: pmossman Date: Thu, 22 Sep 2022 10:04:14 -0500 Subject: [PATCH 1/2] fix flaky test --- .../test/java/io/airbyte/metrics/lib/MetricsQueriesTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/airbyte-metrics/metrics-lib/src/test/java/io/airbyte/metrics/lib/MetricsQueriesTest.java b/airbyte-metrics/metrics-lib/src/test/java/io/airbyte/metrics/lib/MetricsQueriesTest.java index ad5149d732c9..2d36e82ff45e 100644 --- a/airbyte-metrics/metrics-lib/src/test/java/io/airbyte/metrics/lib/MetricsQueriesTest.java +++ b/airbyte-metrics/metrics-lib/src/test/java/io/airbyte/metrics/lib/MetricsQueriesTest.java @@ -285,7 +285,8 @@ void shouldReturnOnlyPendingSeconds() throws SQLException { ctx -> ctx.insertInto(JOBS, JOBS.ID, JOBS.SCOPE, JOBS.STATUS).values(4L, "", JobStatus.failed).execute()); final var res = configDb.query(MetricQueries::oldestPendingJobAgeSecs); - assertEquals(1000, res); + // expected age is 1000 seconds, but allow for +/- 1 second to account for timing/rounding errors + assertTrue(List.of(999L, 1000L, 1001L).contains(res)); } @Test From 72d0b8e4f27a7a1b53c14b8bfd2d8d4e7c455d5b Mon Sep 17 00:00:00 2001 From: pmossman Date: Fri, 23 Sep 2022 10:11:26 -0500 Subject: [PATCH 2/2] also add wiggle room for job age --- .../test/java/io/airbyte/metrics/lib/MetricsQueriesTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/airbyte-metrics/metrics-lib/src/test/java/io/airbyte/metrics/lib/MetricsQueriesTest.java b/airbyte-metrics/metrics-lib/src/test/java/io/airbyte/metrics/lib/MetricsQueriesTest.java index 2d36e82ff45e..7184b892ab04 100644 --- a/airbyte-metrics/metrics-lib/src/test/java/io/airbyte/metrics/lib/MetricsQueriesTest.java +++ b/airbyte-metrics/metrics-lib/src/test/java/io/airbyte/metrics/lib/MetricsQueriesTest.java @@ -333,7 +333,8 @@ void shouldReturnOnlyRunningSeconds() throws SQLException { ctx -> ctx.insertInto(JOBS, JOBS.ID, JOBS.SCOPE, JOBS.STATUS).values(4L, "", JobStatus.failed).execute()); final var res = configDb.query(MetricQueries::oldestRunningJobAgeSecs); - assertEquals(10000, res); + // expected age is 10000 seconds, but allow for +/- 1 second to account for timing/rounding errors + assertTrue(List.of(9999L, 10000L, 10001L).contains(res)); } @Test