Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8199265

java/util/Arrays/TimSortStackSize2.java fails with OOM

    Details

      Description

      After JDK-8190679 has been fixed
      java/util/Arrays/TimSortStackSize2.java started to fail with OOM:

      Command line: [/scratch/opt/mach5/mesos/work_dir/jib-master/install/2018-03-02-2050320.vm-sqe-notifications_ww_grp.pit180301/linux-x64-debug.jdk/jdk-11/fastdebug/bin/java -XX:MaxRAMPercentage=6 -ea -esa -Xmx512m -Xcomp -XX:+CreateCoredumpOnCrash -ea -esa -XX:CompileThreshold=100 -XX:+UnlockExperimentalVMOptions -server -XX:+TieredCompilation -XX:+IgnoreUnrecognizedVMOptions -XX:+AggressiveOpts -XX:-UseBiasedLocking -Xms385m -Xmx385m TimSortStackSize2 67108864 ]
      TimSort OK. Time: 39375546772ns
      Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
      at TimSortStackSize2.createArray(TimSortStackSize2.java:209)
      at TimSortStackSize2.doTest(TimSortStackSize2.java:104)
      at TimSortStackSize2.doTestOfTwoTimSorts(TimSortStackSize2.java:90)
      at TimSortStackSize2.main(TimSortStackSize2.java:54)

        Issue Links

          Activity

          Hide
          amlu Amy Lu added a comment - - edited
          Change from JDK-8190679 cause the problem:

          - .createJavaProcessBuilder(Utils.addTestJavaOpts(xmsValue,
          + .createJavaProcessBuilder(Utils.addTestJavaOpts(xmsValue, xmxValue,

          So for the same testing, after JDK-8190679, test run with:
          -Xms385m -Xmx385m

          but before JDK-8190679, test run with:
          -Xms385m

          This changed the purpose of test's usage of -Xms (with different value by determining whether testing with UseCompressedOops) but without -Xmx (ergonomics will select a maximum heap size), see more:
          http://mail.openjdk.java.net/pipermail/core-libs-dev/2015-March/032346.html
          Show
          amlu Amy Lu added a comment - - edited Change from JDK-8190679 cause the problem: - .createJavaProcessBuilder(Utils.addTestJavaOpts(xmsValue, + .createJavaProcessBuilder(Utils.addTestJavaOpts(xmsValue, xmxValue, So for the same testing, after JDK-8190679 , test run with: -Xms385m -Xmx385m but before JDK-8190679 , test run with: -Xms385m This changed the purpose of test's usage of -Xms (with different value by determining whether testing with UseCompressedOops) but without -Xmx (ergonomics will select a maximum heap size), see more: http://mail.openjdk.java.net/pipermail/core-libs-dev/2015-March/032346.html

            People

            • Assignee:
              iignatyev Igor Ignatyev
              Reporter:
              epavlova Ekaterina Pavlova
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated: