Integrated: 8260296: SA's dumpreplaydata fails
Roland Westrelin
roland at openjdk.java.net
Fri Feb 5 09:37:03 UTC 2021
On Fri, 22 Jan 2021 14:21:52 GMT, Roland Westrelin <roland at openjdk.org> wrote:
> I noticed that the SA's dumpreplaydata command fails with:
>
> java.lang.AssertionError: CLHSDB wasn't run successfully: Opening core file, please wait...
> hsdb> Exception in thread "main" java.lang.InternalError: ciMetadata does not appear to be polymorphic
>
> with a simple test program. This happens because the SA can't find the
> vtable symbol for ciMetadata (build produced by gcc 9.2.1). AFAIU,
> there's nothing in our build system that hides that symbol. I had to
> move one method's definition from the header file to the cpp file for
> the symbol to be visible again.
>
> We have a test that checks dumpreplaydata but it doesn't catch that
> problem. The test produces a replay file from a core file with the SA
> by running a simple test with -Xcomp and CICrash=1. So the replay data
> has very little or no profile data (which is what causes the problem
> above). I propose running a slightly more complicated test method and
> crashing after the method has had time to run for long enough to
> collect profile data.
>
> The other shortcoming of the test is that it doesn't look at the
> content of the replay file. It only warns if they differ. The replay
> file produced by the VM and the one produced by the SA should be
> identical (except for comment lines). So I propose we check that.
>
> Finally, I can't run that test on my system because core files are
> handled by systemd (I'm running some recent version of fedora). I
> suppose, the system can be configured differently but having the test
> work out the box is nice. I extended the test case to handle that.
>
> With the improved test, there are a few differences between the VM and
> SA replay files caused by VM changes that were not mirrored in the
> SA. I fixed those.
This pull request has now been integrated.
Changeset: 3495febf
Author: Roland Westrelin <roland at openjdk.org>
URL: https://git.openjdk.java.net/jdk/commit/3495febf
Stats: 228 lines in 20 files changed: 109 ins; 55 del; 64 mod
8260296: SA's dumpreplaydata fails
Reviewed-by: kvn, cjplummer, iignatyev
-------------
PR: https://git.openjdk.java.net/jdk/pull/2195
More information about the serviceability-dev
mailing list