jdk icon indicating copy to clipboard operation
jdk copied to clipboard

8283223: gc/stringdedup/TestStringDeduplicationFullGC.java#Parallel failed with "RuntimeException: String verification failed"

Open lkorinth opened this issue 1 year ago • 4 comments

I have tried to reproduce the problem by adding load to the system but I have failed. Thomas have reproduced similar problems by adding some fairly large delays in the string deduplication service thread (https://bugs.openjdk.org/browse/JDK-8275684). In this patch I added the systemLoad() method and the minMax() method so that we can log the load when the problem appears. If the failure reappears (I can see no resent failures). We can use those methods to make the test pass on too high load.

getSystemLoadAverage() is a bit blunt and gives an average over one minute, but ought to work if we eventually would like to silence test failures on over-commissioned machines.

Do you think this is okay, or should I change the test to directly skip the testcase instead of adding the load log on failure, maybe that is better?


Progress

  • [ ] Change must be properly reviewed (1 review required, with at least 1 Reviewer)
  • [x] Change must not contain extraneous whitespace
  • [x] Commit message must refer to an issue

Issue

  • JDK-8283223: gc/stringdedup/TestStringDeduplicationFullGC.java#Parallel failed with "RuntimeException: String verification failed" (Bug - P2)

Reviewing

Using git

Checkout this PR locally:
$ git fetch https://git.openjdk.org/jdk.git pull/18327/head:pull/18327
$ git checkout pull/18327

Update a local copy of the PR:
$ git checkout pull/18327
$ git pull https://git.openjdk.org/jdk.git pull/18327/head

Using Skara CLI tools

Checkout this PR locally:
$ git pr checkout 18327

View PR using the GUI difftool:
$ git pr show -t 18327

Using diff file

Download this PR as a diff file:
https://git.openjdk.org/jdk/pull/18327.diff

Webrev

Link to Webrev Comment

lkorinth avatar Mar 15 '24 14:03 lkorinth

:wave: Welcome back lkorinth! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

bridgekeeper[bot] avatar Mar 15 '24 14:03 bridgekeeper[bot]

@lkorinth This change now passes all automated pre-integration checks.

ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details.

After integration, the commit message for the final commit will be:

8283223: gc/stringdedup/TestStringDeduplicationFullGC.java#Parallel failed with "RuntimeException: String verification failed"

Reviewed-by: tschatzl, kbarrett

You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed.

At the time when this comment was updated there had been 7 new commits pushed to the master branch:

  • 907e30ff00abd6cd4935987810d282f46ec07704: 8325579: Inconsistent behavior in com.sun.jndi.ldap.Connection::createSocket
  • 70a15c73638f45b9ed629abc0ea2d86a324bf624: 8328825: Google CAInterop test failures
  • a1fbbffb5e0d7e41a9c3041b7e64382780e86f50: 8328717: Convert javax/swing/JColorChooser/8065098/bug8065098.java applet test to main
  • 26b2ec4847df4b41cbb7a7dd86d78bd3451e3e51: 8328824: Clean up java.base native compilation
  • af15c68f3ccb72537b0a60d942f12d600f13ebb6: 8321278: C2: Partial peeling fails with assert "last_peel <- first_not_peeled"
  • 142c311e3b9bd3f00edaa6ba7bcbc9fc285ee9b9: 8328744: Parallel: Parallel GC throws OOM before heap is fully expanded
  • cb2a6713596548d76c03912709656172b0bbcc76: 8324121: SIGFPE in PhaseIdealLoop::extract_long_range_checks

Please see this link for an up-to-date comparison between the source branch of this pull request and the master branch. As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details.

➡️ To integrate this PR with the above commit message to the master branch, type /integrate in a new comment.

openjdk[bot] avatar Mar 15 '24 14:03 openjdk[bot]

@lkorinth The following label will be automatically applied to this pull request:

  • hotspot-gc

When this pull request is ready to be reviewed, an "RFR" email will be sent to the corresponding mailing list. If you would like to change these labels, use the /label pull request command.

openjdk[bot] avatar Mar 15 '24 14:03 openjdk[bot]

Webrevs

mlbridge[bot] avatar Mar 15 '24 14:03 mlbridge[bot]

Let us see if github actions clear up after this merge

lkorinth avatar Mar 25 '24 12:03 lkorinth

/integrate

lkorinth avatar Mar 26 '24 09:03 lkorinth

Thanks Thomas and Kim!

lkorinth avatar Mar 26 '24 09:03 lkorinth

Going to push as commit 9d441e3e56e733d64dbadde6854761e4545c1c70. Since your change was applied there have been 17 commits pushed to the master branch:

  • 44549b605a7aad1e3143a4058ef6504a7c04167a: 8329012: IGV: Update required JDK version in README.md
  • 5d19d15517f08e13dc4b2025bf289091e47fa55b: 8325186: JVMTI VirtualThreadGetThreadStateClosure class is no longer used and should be removed
  • 5f7432f7b1ca52941b717fd35a929c91fbdd276d: 8328758: GetCurrentContendedMonitor function should use JvmtiHandshake
  • 7560dbb9258f651a221bc8350816845735929fd9: 8316324: Opensource five miscellaneous Swing tests
  • 4047a3623a44d86df2b82565f33ce739a882802d: 8328730: Convert java/awt/print/bug8023392/bug8023392.html applet test to main
  • 27ac39a2bc8250bfae859568cb0ee0963900aafa: 8328719: Convert java/awt/print/PageFormat/SetOrient.html applet test to main
  • fb8f2a0a929ebe7f65c69741712b89bbb403ade9: 8328562: Convert java/awt/InputMethods/DiacriticsTest/DiacriticsTest.java applet test to main
  • 447436e18c754424a62af5135fb3a8973564091d: 8328948: GHA: Restoring sysroot from cache skips the build after JDK-8326960
  • c7cf6020782525eb17ff3013195a81d711a4fce1: 8328385: Convert java/awt/FileDialog/FileDialogReturnTest test to main
  • 78d1b9046830198cd61c505f04f245a430878a5b: 8328380: Remove applet usage from JColorChooser tests Test6348456
  • ... and 7 more: https://git.openjdk.org/jdk/compare/0c1b254be9ddd3883313f80b61229eacf09aa862...master

Your commit was automatically rebased without conflicts.

openjdk[bot] avatar Mar 26 '24 09:03 openjdk[bot]

@lkorinth Pushed as commit 9d441e3e56e733d64dbadde6854761e4545c1c70.

:bulb: You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.

openjdk[bot] avatar Mar 26 '24 09:03 openjdk[bot]