RFR: 8338139: {ClassLoading, Memory}MXBean::isVerbose methods are inconsistent with their setVerbose methods [v2]

Daniel D. Daugherty dcubed at openjdk.org
Mon Aug 19 22:26:49 UTC 2024


On Mon, 19 Aug 2024 19:52:02 GMT, Stefan Karlsson <stefank at openjdk.org> wrote:

>> Update: Looks like the CSR says that's exactly what we want.
>
> Wait. This is not what the implementation does. If you specify -Xlog:gc and -Xlog:gc+init (using a real tag instead of foo), `get_verbose` will return true. It only cares about the tag set that is exactly 'gc' and ignores the 'gc+init' tag set.
> 
> I'm adding a test line to show that.

So in this test case:
    `-Xlog:gc,gc+init`
you have it so that `true` is returned.

With this line of code:
 ```
   const bool is_gc_exact_match = ts->contains(LogTag::_gc) && ts->ntags() == 1;

I would thing that this part is `false`: `ts->ntags() == 1`
for the `-Xlog:gc,gc+init` test case so we'll be returning `false`.

What am I missing?

>> Update: The CSR makes it clear that it is `-Xlog:class+load*` so all have to be set.
>
> This is one of those places where we changed the behavior. Previously, 'isVerbose` would return true here.

Yup. We're in agreement here.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20628#discussion_r1722442004
PR Review Comment: https://git.openjdk.org/jdk/pull/20628#discussion_r1722421913


More information about the hotspot-runtime-dev mailing list