From 3f4698a5360737cef2f20e90e2adfaa8bf1ca9c0 Mon Sep 17 00:00:00 2001 From: jason plumb <75337021+breedx-splk@users.noreply.github.com> Date: Thu, 13 Oct 2022 11:13:22 -0700 Subject: [PATCH] Ensure done before checking success to help troubleshoot timeout issues (#4833) * ensure done before checking success to help troubleshoot timeout issues * add done check to testDefaultRetryPolicy method as well. * ensure isDone() before other assertions --- .../opentelemetry/sdk/autoconfigure/OtlpGrpcRetryTest.java | 7 +++++++ .../opentelemetry/sdk/autoconfigure/OtlpHttpRetryTest.java | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/sdk-extensions/autoconfigure/src/testOtlp/java/io/opentelemetry/sdk/autoconfigure/OtlpGrpcRetryTest.java b/sdk-extensions/autoconfigure/src/testOtlp/java/io/opentelemetry/sdk/autoconfigure/OtlpGrpcRetryTest.java index 7b080a74a15..d44c4c43ec4 100644 --- a/sdk-extensions/autoconfigure/src/testOtlp/java/io/opentelemetry/sdk/autoconfigure/OtlpGrpcRetryTest.java +++ b/sdk-extensions/autoconfigure/src/testOtlp/java/io/opentelemetry/sdk/autoconfigure/OtlpGrpcRetryTest.java @@ -120,6 +120,10 @@ private static void testRetryableStatusCodes( CompletableResultCode resultCode = exporter.apply(dataSupplier.get()).join(10, TimeUnit.SECONDS); + assertThat(resultCode.isDone()) + .as("Exporter didn't complete in time. Consider increasing join timeout?") + .isTrue(); + boolean retryable = RetryUtil.retryableGrpcStatusCodes().contains(String.valueOf(code.value())); boolean expectedResult = retryable || code == Status.Code.OK; @@ -152,6 +156,9 @@ private static void testDefaultRetryPolicy( // Result should be failure, sever should have received maxAttempts requests CompletableResultCode resultCode = exporter.apply(dataSupplier.get()).join(10, TimeUnit.SECONDS); + assertThat(resultCode.isDone()) + .as("Exporter didn't complete in time. Consider increasing join timeout?") + .isTrue(); assertThat(resultCode.isSuccess()).isFalse(); assertThat(serverRequestCountSupplier.get()).isEqualTo(maxAttempts); } diff --git a/sdk-extensions/autoconfigure/src/testOtlp/java/io/opentelemetry/sdk/autoconfigure/OtlpHttpRetryTest.java b/sdk-extensions/autoconfigure/src/testOtlp/java/io/opentelemetry/sdk/autoconfigure/OtlpHttpRetryTest.java index dc81a25e374..501824f1c91 100644 --- a/sdk-extensions/autoconfigure/src/testOtlp/java/io/opentelemetry/sdk/autoconfigure/OtlpHttpRetryTest.java +++ b/sdk-extensions/autoconfigure/src/testOtlp/java/io/opentelemetry/sdk/autoconfigure/OtlpHttpRetryTest.java @@ -129,6 +129,10 @@ private static void testRetryableStatusCodes( CompletableResultCode resultCode = exporter.apply(dataSupplier.get()).join(10, TimeUnit.SECONDS); + assertThat(resultCode.isDone()) + .as("Exporter didn't complete in time. Consider increasing join timeout?") + .isTrue(); + boolean retryable = code != 200 && RetryUtil.retryableHttpResponseCodes().contains(code); boolean expectedResult = retryable || code == 200; assertThat(resultCode.isSuccess()) @@ -159,6 +163,9 @@ private static void testDefaultRetryPolicy( // Result should be failure, sever should have received maxAttempts requests CompletableResultCode resultCode = exporter.apply(dataSupplier.get()).join(10, TimeUnit.SECONDS); + assertThat(resultCode.isDone()) + .as("Exporter didn't complete in time. Consider increasing join timeout?") + .isTrue(); assertThat(resultCode.isSuccess()).isFalse(); assertThat(serverRequestCountSupplier.get()).isEqualTo(maxAttempts); }