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

assetion fails in jfrTraceId::use METHOD_AND_CLASS_USED_THIS_EPOCH

XMLWordPrintable

    • jfr

      Test: jdk/jfr/startupargs/TestStartRecording.java
      Observer on: MAC OSX so far, only once so far
      Error type: assert/crash

      Details:
      # assert(((((klass)->trace_id() & (JfrTraceIdEpoch::method_and_class_in_use_this_epoch_bits())) == (JfrTraceIdEpoch::method_and_class_in_use_this_epoch_bits())) != 0)) failed: invariant
      #
      # JRE version: Java(TM) SE Runtime Environment (13.0) (fastdebug build 13-internal+0-jdk13-jdk.241)
      # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 13-internal+0-jdk13-jdk.241, mixed mode, sharing, tiered, compressed oops, g1 gc, bsd-amd64)


      ===================================
      The file and line info point to:
         jfrTraceId.inline.hpp: assert(METHOD_AND_CLASS_USED_THIS_EPOCH(klass), "invariant");


      inline traceid JfrTraceId::use(const Method* method, bool leakp /* false */) {
        assert(method != NULL, "invariant");
        SET_METHOD_FLAG_USED_THIS_EPOCH(method);
        const Klass* const klass = method->method_holder();
        assert(klass != NULL, "invariant");
        if (leakp) {
          SET_LEAKP_USED_THIS_EPOCH(klass);
          assert(LEAKP_USED_THIS_EPOCH(klass), "invariant");
        }
        SET_METHOD_AND_CLASS_USED_THIS_EPOCH(klass);
        assert(METHOD_AND_CLASS_USED_THIS_EPOCH(klass), "invariant"); <<<============
        return (METHOD_ID(klass, method));
      }

            mgronlun Markus Grönlund
            mseledtsov Mikhailo Seledtsov
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: