RFR: 8263099: TimSortStackSize2.java throws OOM when using -XX:-UseCompressedOops

Hohensee, Paul hohensee at amazon.com
Wed Mar 10 21:05:50 UTC 2021


Hi, Adam, thanks for taking this on.

I believe the general 8u Maintainer consensus is against “bulk” backports such as the one you propose, and in favor of doing a backport series, so we don’t lose history in the target jdk. I found only three changesets to backport.

8220613: java/util/Arrays/TimSortStackSize2.java times out with fastdebug build. Can’t backport because 8u doesn’t support vm.debug.

8199265: java/util/Arrays/TimSortStackSize2.java fails with OOM.
Webrev in https://cr.openjdk.java.net/~phh/8199265/webrev.8u.jdk.01/

8201766: Mark TimSortStackSize2.java as intermittently failing. N/A

8190679: java/util/Arrays/TimSortStackSize2.java fails with "Initial heap size set to a larger value than the maximum heap size".
Webrev in https://cr.openjdk.java.net/~phh/8190679/webrev.8u.jdk.01/

8149391: Fix module dependences in java/util tests. N/A

8140189: [TESTBUG] Get rid of "@library /../../test/lib" in jtreg tests. Incorporated into 8075071 backport in order to make it work.

8075071: [TEST_BUG] TimSortStackSize2.java: OOME: Java heap space: MaxHeap shrinked by MaxRAMFraction.
Webrev in https://cr.openjdk.java.net/~phh/8075071/webrev.8u.jdk.03/

I applied the above webrevs for 8075071, 8190679, and 8199265 in order. The result was your patch, except that I included “@key intermittent” in the 8199265 patch.

Thanks,
Paul

From: Adam Farley <adfarley at redhat.com>
Date: Monday, March 8, 2021 at 10:00 AM
To: "Hohensee, Paul" <hohensee at amazon.com>
Cc: "jdk8u-dev at openjdk.java.net" <jdk8u-dev at openjdk.java.net>
Subject: RE: RFR: 8263099: TimSortStackSize2.java throws OOM when using -XX:-UseCompressedOops

Hi Paul,
I merged the other four change sets, however 3 of the 4 were not clean backports.

Mainly:

1) /../../test/lib causes errors (and, sans ".."s, is the wrong dir for that lib on jdk8 anyway).
2) ProcessTools lacks executeTestJava(String...), though executeTestJvm seems to do the same thing.
3) TEST.ROOT seems to lack the section required for the vm.debug change.

I don't think any of those is a major loss though, so I added the parts of the change sets I thought were clean.

https://github.com/AdoptOpenJDK/openjdk-jdk8u/compare/master...adamfarley:oom_upstream_merge_fix

Your thoughts?

Best Regards

Adam Farley
Software Developer
Red Hat


On Fri, Mar 5, 2021 at 7:19 PM Hohensee, Paul <hohensee at amazon.com<mailto:hohensee at amazon.com>> wrote:
"hg log" says that this test has had quite a few problems since JDK 8. These are the post JDK 8 ones.

$ hg log test/jdk/java/util/Arrays/TimSortStackSize2.java # after repo consolidation

changeset:   53086:a15200acedcd
user:        andrew
date:        Tue Mar 31 08:08:44 2020 +0100
summary:     8220613: java/util/Arrays/TimSortStackSize2.java times out with fastdebug build

changeset:   50849:9b0e2937fac5
user:        iignatyev
date:        Wed Jun 27 13:43:52 2018 -0700
summary:     8199265: java/util/Arrays/TimSortStackSize2.java fails with OOM

changeset:   49820:663f5d90f0e8
user:        darcy
date:        Wed Apr 18 10:03:49 2018 -0700
summary:     8201766: Mark TimSortStackSize2.java as intermittently failing

changeset:   49178:1836bf0c820a
user:        iignatyev
date:        Tue Feb 27 21:29:08 2018 -0800
summary:     8190679: java/util/Arrays/TimSortStackSize2.java fails with "Initial heap size set to a larger value than the maximum heap size"

changeset:   47216:71c04702a3d5
user:        erikj
date:        Tue Sep 12 19:03:39 2017 +0200
summary:     8187443: Forest Consolidation: Move files to unified layout

% hg log jdk/test/java/util/Arrays/TimSortStackSize2.java # before repo consolidation

changeset:   35768:7066da300a08
parent:      35739:db483b34fa71
user:        shurailine
date:        Mon Feb 08 18:14:48 2016 -0800
summary:     8149391: Fix module dependences in java/util tests

changeset:   33832:7dde7a271492
parent:      33659:400008d8de8c
user:        cjplummer
date:        Thu Oct 29 12:02:53 2015 -0700
summary:     8140189: [TESTBUG] Get rid of "@library /../../test/lib" in jtreg tests

changeset:   29613:da0ff5cf6e75
user:        lpriima
date:        Tue Mar 24 03:46:57 2015 -0400
summary:     8075071: [TEST_BUG] TimSortStackSize2.java: OOME: Java heap space: MaxHeap shrinked by MaxRAMFraction

If at all possible, I'd prefer to see these backported, excepting 8201766, 8187443, 8149391, and probably 8140189. The backports should apply pretty cleanly if done in order.

Thanks,
Paul

-----Original Message-----
From: jdk8u-dev <jdk8u-dev-retn at openjdk.java.net<mailto:jdk8u-dev-retn at openjdk.java.net>> on behalf of Adam Farley <adfarley at redhat.com<mailto:adfarley at redhat.com>>
Date: Friday, March 5, 2021 at 8:16 AM
To: "jdk8u-dev at openjdk.java.net<mailto:jdk8u-dev at openjdk.java.net>" <jdk8u-dev at openjdk.java.net<mailto:jdk8u-dev at openjdk.java.net>>
Subject: RFR: 8263099: TimSortStackSize2.java throws OOM when using -XX:-UseCompressedOops

Hi All,

Simple problem, which is solved on later jdk versions by simply increasing
the heap.

Request reviews and sponsor for this change.

Bug: https://bugs.openjdk.java.net/browse/JDK-8263099

Best Regards

Adam Farley
Software Developer
Red Hat


More information about the jdk8u-dev mailing list