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

JDK8 G1 guarantee(!value->is_forwarded()) failed: Object must not be forwarded

XMLWordPrintable

    • gc
    • x86_64
    • generic

      ADDITIONAL SYSTEM INFORMATION :
      > jdk1.8.0_371_hotspot/bin/java -version
      java version "1.8.0_371"
      Java(TM) SE Runtime Environment (build 1.8.0_371-b11)
      Java HotSpot(TM) 64-Bit Server VM (build 25.371-b11, mixed mode)


      A DESCRIPTION OF THE PROBLEM :
      When I was testing JDK8u371, I found that even though I didn't create any strings in my program, it triggered an issue in g1StringDedupTable.cpp:566.

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      > jdk1.8.0_371_hotspot/bin/java -Xms512m -Xmx4096m -XX:+UseStringDeduplication -XX:+UnlockDiagnosticVMOptions -XX:+VerifyDuringGC -XX:+UseG1GC Case

      ----------------
      public class Case {
          public Object[][][] objectArray = new Object[256][256][4];

          public static void main(String[] args) {
              Case c = new Case();
              byte[] bytes = new byte[128 * 1024 * 1024];
              main(args);
          }
      }
      ----------------


      ACTUAL -
       VerifyDuringGC:(full)[Verifying Roots HeapRegions RemSet StrDedup #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      # Internal Error (g1StringDedupTable.cpp:566), pid=32516, tid=0x00007fd7ec911640
      # guarantee(!value->is_forwarded()) failed: Object must not be forwarded
      #
      # JRE version: Java(TM) SE Runtime Environment (8.0_371) (build 1.8.0_371-b11)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (25.371-b11 mixed mode linux-amd64 compressed oops)
      # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
      #
      # An error report file with more information is saved as:
      # /home/alex/projects/ClassReducer/Main/target/classes/hs_err_pid32516.log
      #
      # If you would like to submit a bug report, please visit:
      # http://bugreport.java.com/bugreport/crash.jsp
      #
      Aborted


      ---------- BEGIN SOURCE ----------
      public class Case {
          public Object[][][] objectArray = new Object[256][256][4];

          public static void main(String[] args) {
              Case c = new Case();
              byte[] bytes = new byte[128 * 1024 * 1024];
              main(args);
          }
      }
      ---------- END SOURCE ----------

      FREQUENCY : always


            Unassigned Unassigned
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: