Article - CS362973

High CPU Usage in Method Server Due to Race Condition in com.ptc.core.logging.Log4JDelegateLog.getLog in Windchill PDMLink 12.1

Modified: 24-Nov-2025   


Applies To

  • Windchill PDMLink 12.0

Description

  • High CPU Usage in Method Server Due to Race Condition in com.ptc.core.logging.Log4JDelegateLog.getLog
  • Multiple threads seen accessing the TreeMap in Log4JDelegateLog.getLog and are spending all of their time on the CPU
  • Following stacktrace is seen for these threads:
    • The class performing <clinit> can vary
"ajp-nio-0.0.0.0-8011-exec-7" Id=307 RUNNABLE
      Blocked (cnt): 269; Waited (cnt): 453
  at [email protected]/java.util.TreeMap.getEntry(TreeMap.java:357)
  at [email protected]/java.util.TreeMap.get(TreeMap.java:277)
  at app//com.ptc.core.logging.Log4JDelegateLog.getLog(Log4JDelegateLog.java:79)
  at app//com.ptc.core.logging.LogFactory.getLog(LogFactory.java:140)
  at app//com.ptc.core.logging.LogFactory.getLog(LogFactory.java:131)
  at app//com.ptc.windchill.uwgm.proesrv.ProeService.<clinit>(ProeService.java:184)
  at [email protected]/java.lang.Class.forName0(Native Method)
  at [email protected]/java.lang.Class.forName(Class.java:315)
  • Other threads can become blocked on the class file being initialized with <clinit>
This is a printer-friendly version of Article 362973 and may be out of date. For the latest version click CS362973