Skip to content

Commit dbae23b

Browse files
jbachorikclaude
andauthored
Skip J9+ASAN tests due to OpenJ9 JVM bugs (#418)
OpenJ9 has known GC stack-scanning and defineClass race bugs that are exposed by ASAN timing changes, causing intermittent JVM crashes (SIGSEGV in walkStackFrames during GC scanSlots). eclipse-openj9/openj9#23514 Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2 parents 0396556 + 8747731 commit dbae23b

1 file changed

Lines changed: 14 additions & 13 deletions

File tree

build-logic/conventions/src/main/kotlin/com/datadoghq/profiler/ProfilerTestPlugin.kt

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -252,19 +252,14 @@ class ProfilerTestPlugin : Plugin<Project> {
252252

253253
// Sanitizer conditions
254254
when (testConfig.configName) {
255-
"asan" -> testTask.onlyIf { PlatformUtils.locateLibasan() != null }
256-
"tsan" -> testTask.onlyIf { PlatformUtils.locateLibtsan() != null }
257-
}
258-
259-
// J9+ASAN: isolate each test class in its own JVM to limit crash blast radius
260-
if (testConfig.configName == "asan") {
261-
testTask.doFirst {
262-
if (PlatformUtils.isTestJvmJ9()) {
263-
testTask.setForkEvery(1)
264-
}
255+
"asan" -> testTask.onlyIf {
256+
PlatformUtils.locateLibasan() != null &&
257+
// Skip J9+ASAN: OpenJ9 has known GC stack-scanning and defineClass
258+
// race bugs exposed by ASAN timing
259+
// https://github.com/eclipse-openj9/openj9/issues/23514
260+
!PlatformUtils.isTestJvmJ9()
265261
}
266-
// Kill hung ASAN test tasks after 30 minutes
267-
testTask.timeout.set(Duration.ofMinutes(30))
262+
"tsan" -> testTask.onlyIf { PlatformUtils.locateLibtsan() != null }
268263
}
269264
}
270265
}
@@ -345,7 +340,13 @@ class ProfilerTestPlugin : Plugin<Project> {
345340

346341
// Sanitizer conditions
347342
when (testConfig.configName) {
348-
"asan" -> execTask.onlyIf { PlatformUtils.locateLibasan() != null }
343+
"asan" -> execTask.onlyIf {
344+
PlatformUtils.locateLibasan() != null &&
345+
// Skip J9+ASAN: OpenJ9 has known GC stack-scanning and defineClass
346+
// race bugs exposed by ASAN timing
347+
// https://github.com/eclipse-openj9/openj9/issues/23514
348+
!PlatformUtils.isTestJvmJ9()
349+
}
349350
"tsan" -> execTask.onlyIf { PlatformUtils.locateLibtsan() != null }
350351
}
351352
}

0 commit comments

Comments
 (0)