RFR: 8299560: Assertion failed: currentQueryIndex >= 0 && currentQueryIndex < numberOfJavaProcessesAtInitialization
Chris Plummer
cjplummer at openjdk.org
Wed Sep 27 15:48:13 UTC 2023
On Thu, 14 Sep 2023 17:24:39 GMT, Kevin Walls <kevinw at openjdk.org> wrote:
> This assert happens rarely, but is seen in testing a few times.
>
> getCurrentQueryIndexForProcess comments that it can return -1, but it asserts that the value is >=0
>
> If we let it return -1 for failure as its comment documents, the caller can handle the failure and not assert and end the JVM.
>
> Conversely, currentQueryIndexForProcess() clearly can return -1 on failure, so add the comment like we already have in getCurrentQueryIndexForProcess().
>
> This assert is not reproducing on demand, but with this change I've done 50+ iterations of the test on windows-x64 and windows-x64-debug in mach5, and hundreds locally.
>
> The test which has been seen to trigger the assert
> "test/jdk/com/sun/management/OperatingSystemMXBean/GetProcessCpuLoad.java"
> ...checks the range of the load value returned, and is happy enough if -1 is the answer.
Marked as reviewed by cjplummer (Reviewer).
-------------
PR Review: https://git.openjdk.org/jdk/pull/15750#pullrequestreview-1647041495
More information about the serviceability-dev
mailing list