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

gc/stress/TestStressG1Humongous.java failed with "Cannot start testing because selected maximum heap is not large enough to contain more than 2 regions"

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: P4 P4
    • None
    • 21
    • hotspot
    • gc
    • x86_64
    • os_x_10.15

      The following test failed in the JDK21 CI:

      gc/stress/TestStressG1Humongous.java

      Here's a snippet from the log file:

      #section:driver
      ----------messages:(8/353)----------
      command: driver gc.stress.TestStressG1Humongous
      reason: User specified action: run driver/timeout=1300 gc.stress.TestStressG1Humongous
      started: Fri Feb 03 17:47:26 GMT 2023
      Mode: agentvm
      Agent id: 31
      Additional exports to unnamed modules from @modules: java.base/jdk.internal.misc
      finished: Fri Feb 03 17:52:44 GMT 2023
      elapsed time (seconds): 317.851
      ----------configuration:(15/2039)----------

      <snip>

      ----------System.out:(12/5400)----------
      Command line: [/System/Volumes/Data/mesos/work_dir/jib-master/install/jdk-21+8-492/macosx-x64-debug.jdk/jdk-21/fastdebug/bin/java -cp /System/Volumes/Data/mesos/work_dir/slaves/91e16c40-06d4-468a-9fc3-7198a5bb7d5a-S59338/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/b334d05a-06cd-4e42-84f0-0dfbaea15024/runs/c5533da4-2407-4fb8-b835-f4d0aec919a3/testoutput/test-support/jtreg_open_test_hotspot_jtreg_hotspot_gc/classes/2/gc/stress/TestStressG1Humongous.d:/System/Volumes/Data/mesos/work_dir/jib-master/install/jdk-21+8-492/src.full/open/test/hotspot/jtreg/gc/stress:/System/Volumes/Data/mesos/work_dir/slaves/91e16c40-06d4-468a-9fc3-7198a5bb7d5a-S59338/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/b334d05a-06cd-4e42-84f0-0dfbaea15024/runs/c5533da4-2407-4fb8-b835-f4d0aec919a3/testoutput/test-support/jtreg_open_test_hotspot_jtreg_hotspot_gc/classes/2/test/lib:/System/Volumes/Data/mesos/work_dir/jib-master/install/jtreg/7.1.1/1/bundles/jtreg-7.1.1+1.zip/jtreg/lib/jtreg.jar:/System/Volumes/Data/mesos/work_dir/jib-master/install/jtreg/7.1.1/1/bundles/jtreg-7.1.1+1.zip/jtreg/lib/junit-platform-console-standalone-1.8.2.jar:/System/Volumes/Data/mesos/work_dir/jib-master/install/jtreg/7.1.1/1/bundles/jtreg-7.1.1+1.zip/jtreg/lib/testng-7.3.0.jar:/System/Volumes/Data/mesos/work_dir/jib-master/install/jtreg/7.1.1/1/bundles/jtreg-7.1.1+1.zip/jtreg/lib/jcommander-1.78.jar:/System/Volumes/Data/mesos/work_dir/jib-master/install/jtreg/7.1.1/1/bundles/jtreg-7.1.1+1.zip/jtreg/lib/guice-4.2.3.jar -XX:MaxRAMPercentage=6.25 -Dtest.boot.jdk=/System/Volumes/Data/mesos/work_dir/jib-master/install/jdk/19/36/bundles/macos-x64/jdk-19_macos-x64_bin.tar.gz/jdk-19.jdk/Contents/Home -Djava.io.tmpdir=/System/Volumes/Data/mesos/work_dir/slaves/91e16c40-06d4-468a-9fc3-7198a5bb7d5a-S59338/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/b334d05a-06cd-4e42-84f0-0dfbaea15024/runs/c5533da4-2407-4fb8-b835-f4d0aec919a3/testoutput/test-support/jtreg_open_test_hotspot_jtreg_hotspot_gc/tmp -Xcomp -XX:+CreateCoredumpOnCrash -ea -esa -XX:CompileThreshold=100 -XX:+UnlockExperimentalVMOptions -server -XX:+TieredCompilation -XX:-UseCompressedOops -Xlog:gc=debug -Xmx1024m -XX:+UseG1GC -XX:G1HeapRegionSize=4m -Dtimeout=120 -Dthreads=3 -Dhumongoussize=1.1 -Dregionsize=4 gc.stress.TestStressG1HumongousImpl ]
      [2023-02-03T17:47:28.452124Z] Gathering output for process 1755
      [2023-02-03T17:47:28.585874Z] Waiting for completion for process 1755
      [2023-02-03T17:49:41.585100Z] Waiting for completion finished for process 1755
      Command line: [/System/Volumes/Data/mesos/work_dir/jib-master/install/jdk-21+8-492/macosx-x64-debug.jdk/jdk-21/fastdebug/bin/java -cp /System/Volumes/Data/mesos/work_dir/slaves/91e16c40-06d4-468a-9fc3-7198a5bb7d5a-S59338/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/b334d05a-06cd-4e42-84f0-0dfbaea15024/runs/c5533da4-2407-4fb8-b835-f4d0aec919a3/testoutput/test-support/jtreg_open_test_hotspot_jtreg_hotspot_gc/classes/2/gc/stress/TestStressG1Humongous.d:/System/Volumes/Data/mesos/work_dir/jib-master/install/jdk-21+8-492/src.full/open/test/hotspot/jtreg/gc/stress:/System/Volumes/Data/mesos/work_dir/slaves/91e16c40-06d4-468a-9fc3-7198a5bb7d5a-S59338/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/b334d05a-06cd-4e42-84f0-0dfbaea15024/runs/c5533da4-2407-4fb8-b835-f4d0aec919a3/testoutput/test-support/jtreg_open_test_hotspot_jtreg_hotspot_gc/classes/2/test/lib:/System/Volumes/Data/mesos/work_dir/jib-master/install/jtreg/7.1.1/1/bundles/jtreg-7.1.1+1.zip/jtreg/lib/jtreg.jar:/System/Volumes/Data/mesos/work_dir/jib-master/install/jtreg/7.1.1/1/bundles/jtreg-7.1.1+1.zip/jtreg/lib/junit-platform-console-standalone-1.8.2.jar:/System/Volumes/Data/mesos/work_dir/jib-master/install/jtreg/7.1.1/1/bundles/jtreg-7.1.1+1.zip/jtreg/lib/testng-7.3.0.jar:/System/Volumes/Data/mesos/work_dir/jib-master/install/jtreg/7.1.1/1/bundles/jtreg-7.1.1+1.zip/jtreg/lib/jcommander-1.78.jar:/System/Volumes/Data/mesos/work_dir/jib-master/install/jtreg/7.1.1/1/bundles/jtreg-7.1.1+1.zip/jtreg/lib/guice-4.2.3.jar -XX:MaxRAMPercentage=6.25 -Dtest.boot.jdk=/System/Volumes/Data/mesos/work_dir/jib-master/install/jdk/19/36/bundles/macos-x64/jdk-19_macos-x64_bin.tar.gz/jdk-19.jdk/Contents/Home -Djava.io.tmpdir=/System/Volumes/Data/mesos/work_dir/slaves/91e16c40-06d4-468a-9fc3-7198a5bb7d5a-S59338/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/b334d05a-06cd-4e42-84f0-0dfbaea15024/runs/c5533da4-2407-4fb8-b835-f4d0aec919a3/testoutput/test-support/jtreg_open_test_hotspot_jtreg_hotspot_gc/tmp -Xcomp -XX:+CreateCoredumpOnCrash -ea -esa -XX:CompileThreshold=100 -XX:+UnlockExperimentalVMOptions -server -XX:+TieredCompilation -XX:-UseCompressedOops -Xlog:gc=debug -Xmx1024m -XX:+UseG1GC -XX:G1HeapRegionSize=16m -Dtimeout=120 -Dthreads=5 -Dhumongoussize=2.1 -Dregionsize=16 gc.stress.TestStressG1HumongousImpl ]
      [2023-02-03T17:49:41.619858Z] Gathering output for process 1782
      [2023-02-03T17:49:41.621021Z] Waiting for completion for process 1782
      [2023-02-03T17:52:44.454002Z] Waiting for completion finished for process 1782
      [2023-02-03T17:52:44.454445Z] Waiting for completion for process 1782
      [2023-02-03T17:52:44.454798Z] Waiting for completion finished for process 1782
      [2023-02-03T17:52:44.487012Z] Waiting for completion for process 1782
      [2023-02-03T17:52:44.487130Z] Waiting for completion finished for process 1782
      ----------System.err:(24/1377)----------
       stdout: [[0.028s][info][gc] Using G1
      [0.029s][debug][gc] ConcGCThreads: 2 offset 16
      [0.029s][debug][gc] ParallelGCThreads: 8
      [0.029s][debug][gc] Initialize mark stack with 4096 chunks, maximum 524288
      ];
       stderr: [Exception in thread "main" java.lang.RuntimeException: Cannot start testing because selected maximum heap is not large enough to contain more than 2 regions
      at gc.stress.TestStressG1HumongousImpl.getExpectedAmountOfObjects(TestStressG1Humongous.java:129)
      at gc.stress.TestStressG1HumongousImpl.run(TestStressG1Humongous.java:107)
      at gc.stress.TestStressG1HumongousImpl.main(TestStressG1Humongous.java:96)
      ]
       exitValue = 1

      java.lang.RuntimeException: Expected to get exit value of [0], exit value is: [1]
      at jdk.test.lib.process.OutputAnalyzer.shouldHaveExitValue(OutputAnalyzer.java:490)
      at gc.stress.TestStressG1Humongous.run(TestStressG1Humongous.java:77)
      at gc.stress.TestStressG1Humongous.main(TestStressG1Humongous.java:55)
      at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
      at java.base/java.lang.reflect.Method.invoke(Method.java:578)
      at com.sun.javatest.regtest.agent.MainActionHelper$AgentVMRunnable.run(MainActionHelper.java:312)
      at java.base/java.lang.Thread.run(Thread.java:1623)

      JavaTest Message: Test threw exception: java.lang.RuntimeException
      JavaTest Message: shutting down test

      result: Failed. Execution failed: `main' threw exception: java.lang.RuntimeException: Expected to get exit value of [0], exit value is: [1]


      With a failure mode like:

      ----------System.err:(24/1377)----------
       stdout: [[0.028s][info][gc] Using G1
      [0.029s][debug][gc] ConcGCThreads: 2 offset 16
      [0.029s][debug][gc] ParallelGCThreads: 8
      [0.029s][debug][gc] Initialize mark stack with 4096 chunks, maximum 524288
      ];
       stderr: [Exception in thread "main" java.lang.RuntimeException: Cannot start testing because selected maximum heap is not large enough to contain more than 2 regions

      it seems like the test needs an "@requires" value for minimum memory.
      This test machine is a MacPro6_1 with 16GB of RAM.

            Unassigned Unassigned
            dcubed Daniel Daugherty
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: