jmx-dev Integrated: 8351002: com/sun/management/OperatingSystemMXBean cpuLoad tests fail intermittently

Kevin Walls kevinw at openjdk.org
Wed Mar 26 09:06:17 UTC 2025


On Mon, 24 Mar 2025 10:13:34 GMT, Kevin Walls <kevinw at openjdk.org> wrote:

> These tests have always silently permitted a -1 return value from OperatingSystemMXBean CPU time methods.
> 
> They need to be stricter, but occasionally Windows 2019 returns a -1 for the first few calls of these methods.  This seems to be a Windows 2019 bug or peculiarity.  Other Windows versions are not affected.
> 
> GetProcessCpuLoad.java and GetSystemCpuLoad.java need to fail only if the CPU time calls continually return -1.  They should permit -1 values, as long as subsequently a value in the valid range is read.
> 
> The GetProcessCpuTime test also needs to retry enough times to expect no -1 values, and not just skip.  While updating this test: it has a maximum expected value of Long.MAX_VALUE, which it may as well reduce to something that does not look like a binary "all ones except for the high bit" value (without creating an ongoing game where we keep increasing the value to avoid failures in slow runs).

This pull request has now been integrated.

Changeset: eb6e8288
Author:    Kevin Walls <kevinw at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/eb6e8288c628577ce557266773ffebdf0bbe853a
Stats:     71 lines in 4 files changed: 51 ins; 6 del; 14 mod

8351002: com/sun/management/OperatingSystemMXBean cpuLoad tests fail intermittently

Reviewed-by: sspitsyn, lmesnik

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

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


More information about the jmx-dev mailing list