RFR: 8321687: Test vmTestbase/nsk/jvmti/scenarios/contention/TC03/tc03t002/TestDescription.java failed: JVMTI_ERROR_THREAD_NOT_ALIVE

Serguei Spitsyn sspitsyn at openjdk.org
Wed Oct 15 22:14:41 UTC 2025


On Wed, 15 Oct 2025 20:38:14 GMT, Leonid Mesnik <lmesnik at openjdk.org> wrote:

> Test might fail with 
> 
> ----------System.out:(5/399)----------
> The following fake exception stacktrace is for failure analysis.
> nsk.share.Fake_Exception_for_RULE_Creation: (tc03t002.cpp:144) jvmti->GetCurrentContendedMonitor(threadList[pThread].thread, &monitor)
> at nsk_lvcomplain(nsk_tools.cpp:172)
> # ERROR: tc03t002.cpp, 144: jvmti->GetCurrentContendedMonitor(threadList[pThread].thread, &monitor)
> # jvmti error: code=15, name=JVMTI_ERROR_THREAD_NOT_ALIVE
> 
> if some of threads unexpectedly finishes during test execution. 
> 
> 
> It might happens only for some tests that are not started and verified by thread. So the fix is to skip them and verify only "Debugee" threads that might be in the deadlock.

test/hotspot/jtreg/vmTestbase/nsk/jvmti/scenarios/contention/TC03/tc03t002/tc03t002.cpp line 49:

> 47: 
> 48: static const char* thread_name_prefix = "Debugee Thread";
> 49: static size_t thread_name_prefix_len = strlen(thread_name_prefix);

Nit: I'd suggest to add a `const` specifier as it is a constant.
Also, both identifiers `thread_name_prefix` and `thread_name_prefix_len` is better to capitalize to reflect they are non-mutable.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/27831#discussion_r2434103741


More information about the serviceability-dev mailing list