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

assert(((((JfrTraceIdBits::load(klass)) & ((JfrTraceIdEpoch::this_epoch_method_and_class_bits()))) != 0))) failed: invariant

XMLWordPrintable

    • jfr
    • b32
    • x86_64
    • linux

      The following test failed in the JDK17 CI:

      applications/kitchensink/Kitchensink24HStress.java

      Here's a snippet from the log file:

      [2021-02-01T16:23:11.990706516Z] Gathering output for process 4015
      [2021-02-01T16:23:18.179440027Z] Waiting for completion for process 4015
      [2021-02-01T16:23:18.179519356Z] Waiting for completion finished for process 4015
      Output and diagnostic info for process 4015 was saved into 'pid-4015-output.log'
      [stress.process.out] #
      [stress.process.out] # A fatal error has been detected by the Java Runtime Environment:
      [stress.process.out] #
      [stress.process.out] # Internal Error (/opt/mach5/mesos/work_dir/slaves/983c483a-6907-44e0-ad29-98c7183575e2-S14447/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/427d82f1-c179-443d-b5ed-6a2a578443b4/runs/9e9a7411-ccf5-4ff3-bf2e-6ffe73f069b0/workspace/open/src/hotspot/share/jfr/recorder/checkpoint/types/traceid/jfrTraceIdLoadBarrier.inline.hpp:112), pid=400, tid=488
      [stress.process.out] # assert(((((JfrTraceIdBits::load(klass)) & ((JfrTraceIdEpoch::this_epoch_method_and_class_bits()))) != 0))) failed: invariant
      [stress.process.out] #
      [stress.process.out] # JRE version: Java(TM) SE Runtime Environment (17.0+8) (fastdebug build 17-ea+8-LTS-506)
      [stress.process.out] # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 17-ea+8-LTS-506, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
      [stress.process.out] # Problematic frame:
      [stress.process.out] # V [libjvm.so+0x14ffbd3] ObjectSampleCheckpoint::add_to_leakp_set(InstanceKlass const*, unsigned long)+0x433
      [stress.process.out] #
      [stress.process.out] # Core dump will be written. Default location: Core dumps may be processed with "/opt/core.sh %p" (or dumping to /opt/mach5/mesos/work_dir/slaves/983c483a-6907-44e0-ad29-98c7183575e2-S15054/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/6ac250f0-5452-489f-a3b7-9c3154bde499/runs/33ce67e8-37d0-4d33-b6fb-1165b7d6379c/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink24HStress_java/scratch/0/core.400)
      [stress.process.out] #
      [stress.process.out] # JFR recording file will be written. Location: /opt/mach5/mesos/work_dir/slaves/983c483a-6907-44e0-ad29-98c7183575e2-S15054/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/6ac250f0-5452-489f-a3b7-9c3154bde499/runs/33ce67e8-37d0-4d33-b6fb-1165b7d6379c/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink24HStress_java/scratch/0/hs_err_pid400.jfr
      [stress.process.out] #
      [stress.process.out] Unsupported internal testing APIs have been used.
      [stress.process.out]
      [stress.process.out] # An error report file with more information is saved as:
      [stress.process.out] # /opt/mach5/mesos/work_dir/slaves/983c483a-6907-44e0-ad29-98c7183575e2-S15054/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/6ac250f0-5452-489f-a3b7-9c3154bde499/runs/33ce67e8-37d0-4d33-b6fb-1165b7d6379c/testoutput/test-support/jtreg_closed_test_hotspot_jtreg_applications_kitchensink_Kitchensink24HStress_java/scratch/0/hs_err_pid400.log
      [stress.process.out] #
      [stress.process.out] # If you would like to submit a bug report, please visit:
      [stress.process.out] # https://bugreport.java.com/bugreport/crash.jsp
      [stress.process.out] #
      [2021-02-01T16:24:18.182948266Z] Gathering output for process 4454
      [2021-02-01T16:24:18.190832619Z] Waiting for completion for process 4454
      [2021-02-01T16:24:18.190895408Z] Waiting for completion finished for process 4454
      Output and diagnostic info for process 4454 was saved into 'pid-4454-output.log'


      Here's the crashing thread's stack:

      --------------- T H R E A D ---------------

      Current thread (0x00007f6f6c049990): JavaThread "JFR Recorder Thread" daemon [_thread_in_vm, id=488, stack(0x00007f6eefeff000,0x00007f6ef0000000)]

      Stack: [0x00007f6eefeff000,0x00007f6ef0000000], sp=0x00007f6eefffea10, free space=1022k
      Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
      V [libjvm.so+0x14ffbd3] ObjectSampleCheckpoint::add_to_leakp_set(InstanceKlass const*, unsigned long)+0x433
      V [libjvm.so+0x150003e] ObjectSampleCheckpoint::write_stacktrace(JfrStackTrace const*, JfrCheckpointWriter&)+0xfe
      V [libjvm.so+0x1500a92] StackTraceBlobInstaller::install(ObjectSample*)+0x1f2
      V [libjvm.so+0x1501200] ObjectSampleCheckpoint::on_rotation(ObjectSampler const*, JfrStackTraceRepository&)+0x370
      V [libjvm.so+0xf10c44] JfrRecorderService::pre_safepoint_write()+0xc4
      V [libjvm.so+0xf10e65] JfrRecorderService::chunk_rotation()+0x75
      V [libjvm.so+0xf128a5] JfrRecorderService::rotate(int)+0x45
      V [libjvm.so+0xf141ea] recorderthread_entry(JavaThread*, Thread*)+0x34a
      V [libjvm.so+0x184f5d6] JavaThread::thread_main_inner()+0x256
      V [libjvm.so+0x1855f40] Thread::call_run()+0x100
      V [libjvm.so+0x1540b06] thread_native_entry(Thread*)+0x116


      This failure looks very similar to:

      JDK-8249245 assert(((((JfrTraceIdBits::load(klass)) & ((JfrTraceIdEpoch::this_epoch_method_and_class_bits()))) != 0))) failed: invariant

      The fix for that bug was integrated on 2021.01.18.
      This build-ID (jdk-17+8-506) was submitted on 2021.01.30
      so this build-ID should include the fix for JDK-8249245.

            mgronlun Markus Grönlund
            dcubed Daniel Daugherty
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: