From be013f3507a4765c7600eb585f17c383a252a827 Mon Sep 17 00:00:00 2001 From: Lauri Tulmin Date: Sat, 16 Aug 2025 22:26:10 +0300 Subject: [PATCH] Try to work around openj9 crash (#14442) --- .../src/main/kotlin/otel.java-conventions.gradle.kts | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/conventions/src/main/kotlin/otel.java-conventions.gradle.kts b/conventions/src/main/kotlin/otel.java-conventions.gradle.kts index 22f6bf59a98a..f80a8f5ecbc3 100644 --- a/conventions/src/main/kotlin/otel.java-conventions.gradle.kts +++ b/conventions/src/main/kotlin/otel.java-conventions.gradle.kts @@ -339,6 +339,14 @@ val resourceClassesCsv = resourceNames.joinToString(",") { "io.opentelemetry.sdk tasks.withType().configureEach { useJUnitPlatform() + // work around jvm crash on openJ9 8 after updating armeria to 1.33.1 + val testJavaVersion = gradle.startParameter.projectProperties["testJavaVersion"]?.let(JavaVersion::toVersion) + val useJ9 = gradle.startParameter.projectProperties["testJavaVM"]?.run { this == "openj9" } + ?: false + if (useJ9 && testJavaVersion != null && testJavaVersion.isJava8) { + jvmArgs("-Xjit:exclude={io/opentelemetry/testing/internal/io/netty/buffer/HeapByteBufUtil.*},exclude={io/opentelemetry/testing/internal/io/netty/buffer/UnpooledHeapByteBuf.*},exclude={io/opentelemetry/testing/internal/io/netty/buffer/AbstractByteBuf.*}") + } + // There's no real harm in setting this for all tests even if any happen to not be using context // propagation. jvmArgs("-Dio.opentelemetry.context.enableStrictContext=${rootProject.findProperty("enableStrictContext") ?: true}")