On Thu, 1 May 2025 00:26:27 GMT, Chris Plummer <cjplum...@openjdk.org> wrote:

> A followup to [JDK-8355773](https://bugs.openjdk.org/browse/JDK-8355773). 
> Convert a bunch more tests to fetch the ThreadReference from a static field 
> in the debuggee. [JDK-8355773](https://bugs.openjdk.org/browse/JDK-8355773) 
> focused on the easier tests that already had a static field, and the name of 
> the field was the same as the thread name. This batch takes care of a bunch 
> of harder to convert tests where in many cases static field has to be added 
> and usually does not have the same name as the thread name.
> 
> Note there was a lot of template copy-n-paste code that I deleted because it 
> was never used. For example, most tests were not using the `listIterator` 
> variable. There were also many deletions of calls to vm.allThreads(). Some 
> were because the need to iterate over the threads went away, but most were 
> because the result was never used.
> 
> There are many places where the original code iterated over all the threads 
> looking for a particular thread rather than calling on of the existing 
> threadByName() APIs, and you'll see this being replaced by calls to the new 
> threadByFieldNameOrThrow() API. One thing to keep in mind is that the old 
> code tried to continue running the test if it failed to find the thread. This 
> would lead to a timeout. threadByFieldNameOrThrow() will throw an exception 
> which forces the test to quickly exit.
> 
> I added a 2nd threadByFieldNameOrThrow() API. The original one just took a 
> threadFieldName argument, assuming that the name of the static field and the 
> name of the thread were the same. The new one adds a threadName argument, 
> allowing for the two to be different. The threadName is used just to double 
> check that the Thread fetched from the static field has the expected name. It 
> is not used as part of the lookup.
> 
> Tested with CI tier5, which is where all the nsk/jdi testing is done. Also 
> ran locally on linux-x64.

This pull request has now been integrated.

Changeset: 92730945
Author:    Chris Plummer <cjplum...@openjdk.org>
URL:       
https://git.openjdk.org/jdk/commit/927309453822183bbfa9af278043fe0dca17031c
Stats:     1014 lines in 92 files changed: 186 ins; 614 del; 214 mod

8356023: Some nsk/jdi tests can fetch ThreadReference from static field in the 
debuggee: part 2

Reviewed-by: amenkov, sspitsyn, lmesnik

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

PR: https://git.openjdk.org/jdk/pull/24979

Reply via email to