0 Replies Latest reply: Apr 3, 2013 3:49 AM by 719552 RSS

    GetAllStackTraces supposedly reports wrong state

    719552
      Hi,

      JVMTI function GetAllStackTraces seems to report wrong thread state when the profiled application is under high load.

      For instance, it reports bit JVMTI_THREAD_STATE_BLOCKED_ON_MONITOR_ENTER for method java.lang.String.valueOf(char[])

      How can this method be waiting on a monitor?

      Is this a known issue?

      Should we report a bug?


      Some detail:

      Linux 2.6.18, amd64, 8 cores

      Java HotSpot(TM) 64-Bit Server VM; 1.7.0_17; 23.7-b01; mixed mode

      VM options:
      -XX:+UseCompressedOops
      -Xms7G
      -Xmx7G
      -XX:PermSize=256M
      -XX:MaxPermSize=256M
      -XX:NewSize=1G
      -XX:MaxNewSize=1G
      -XX:-TieredCompilation
      -XX:SurvivorRatio=4
      -XX:+UseConcMarkSweepGC
      -XX:+UseParNewGC
      -XX:+DisableExplicitGC
      -XX:+UseCMSInitiatingOccupancyOnly
      -XX:+CMSClassUnloadingEnabled
      -XX:CMSInitiatingOccupancyFraction=68
      -XX:+PrintGCDateStamps
      -XX:+PrintGCDetails
      -XX:+PrintPromotionFailure
      -XX:-OmitStackTraceInFastThrow
      -XX:+PrintReferenceGC
      -XX:+PrintJNIGCStalls
      -XX:+PrintGCTimeStamps
      -agentpath:<...>

      Best regards,
      Anton