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

Failing to allocate MethodCounters and MDO causes a serious performance drop

    Details

    • Subcomponent:
    • Resolved In Build:
      b40
    • Verification:
      Not verified

      Backports

        Description

        AdvancedThresholdPolicy::create_mdo uses CHECK_AND_CLEAR when creating a MethodData object. If Metaspace is full, this will result in a lot of GCs, since Metaspace will return throw an OOME everytime the interpreter tries to create a MethodData.

        Is is possible for the interpreter to notice that it could not allocate the MethodData and then don't allocate any more MethodData until the OOME can reach a JavaThread so the application can handle it?

          Attachments

          1. ByteCodeLoader.java
            3 kB
          2. InMemoryJavaCompiler.java
            6 kB
          3. Reproducer.java
            2 kB
          4. reproducer.sh
            0.5 kB

            Issue Links

              Activity

                People

                • Assignee:
                  coleenp Coleen Phillimore
                  Reporter:
                  ehelin Erik Helin
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  11 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: