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

G1: assert(_hrs.max_length() == _expansion_regions) failed

    Details

    • Subcomponent:
      gc
    • Resolved In Build:
      b03
    • Verification:
      Verified

      Backports

        Description

        Nightly testing for 2014-01-07 triggered the follwoing assert:

        # Internal Error (/opt/jprt/T/P1/155441.amurillo/s/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp:2069), pid=6893, tid=4152105840
        # assert(_hrs.max_length() == _expansion_regions) failed: max length: 14784 expansion regions: 2496

        This is in G1CollectedHeap::initialize() while we are setting up the heap.

         _hrs.max_length() contains the number of regions that we have set up.
        _expansion_regions represents the number of regions based on MaxHeapSize.

        The assert says that these values should be the same, which of course makes sense. In this case we have _hrs.max_length() > _expansion_regions, which looks like we for some reason set up more regions than was required to cover the MaxHeapSize.


        Impact=M, the crash happens at startup. No loss of data.
        Likelihood=L, we have not seen this before so it is likely that this has to do with some condition on the specific machine. Low memory?
        Workaround=H, Unknown at the moment.

        ILW=MLH -> P4

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  sjohanss Stefan Johansson
                  Reporter:
                  brutisso Bengt Rutisson (Inactive)
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  5 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: