アーティクル - CS169825
org.apache.log4j.ConsoleAppender を使用すると、MethodServer がデッドロックするか、Windchill PDMLink で応答がありません
修正日: 22-Dec-2022
適用対象
- Windchill PDMLink 9.1 to 10.2
説明
- MethodServer または ServerManager でorg.apache.log4j.ConsoleAppenderを使用すると、Windchillデッドロックが発生するか、応答がありません
- 以下のサンプルスタックトレース
「ajp-bio-8010-exec-7」:
org.apache.log4j.AppenderSkeleton.doAppend (AppenderSkeleton.java:251) で
- <0x0000000710ebe788> のロック待ち ( org.apache.log4j.ConsoleAppender )
org.apache.log4j.helpers.AppenderAttachableImpl5.appendLoopOnAppenders (AppenderAttachableImpl5.java:79) で
org.apache.log4j.Category.callAppenders (Category.java:206) で
wt.log4j.jmx.LogPrintStream$LogOutputStream.write(LogPrintStream.java:92) で
java.io.OutputStream.write(OutputStream.java:99) で
java.io.PrintStream.write(PrintStream.java:430) で
- ロックされた <0x00000007001c6828> (a wt.log4j.jmx.LogPrintStream)
sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:202) で
sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:272) で
sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:85) で
- ロックされた <0x00000007001c68a8> (java.io.OutputStreamWriter)
java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:168) で
java.io.PrintStream.newLine(PrintStream.java:496) で
- ロックされた <0x00000007001c6828> (a wt.log4j.jmx.LogPrintStream)
java.io.PrintStream.println (PrintStream.java:757) で
- ロックされた <0x00000007001c6828> (a wt.log4j.jmx.LogPrintStream)
org.apache.tomcat.util.log.SystemLogHandler.println (SystemLogHandler.java:264) で
org.apache.log4j.helpers.LogLog.error (LogLog.java:129) で
org.apache.log4j.AppenderSkeleton.doAppend (AppenderSkeleton.java:254) で
- ロックされた <0x000000070011f890> (a wt.log4j.jmx.DailyRollingFileAppender)
org.apache.log4j.helpers.AppenderAttachableImpl5.appendLoopOnAppenders (AppenderAttachableImpl5.java:79) で
org.apache.log4j.Category.callAppenders (Category.java:206) で
org.apache.log4j.Category.forcedLog (Category.java:390) で
org.apache.log4j.Category.log (Category.java:825) で
wt.servlet.ServletRequestMonitor.endRequest (ServletRequestMonitor.java:2848) で
wt.servlet.ServletRequestMonitor.doFilter(ServletRequestMonitor.java:1617) で
wt.servlet.ServletRequestMonitorFilter.doFilter(ServletRequestMonitorFilter.java:56) で
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:243) で
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) で
org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:222) で
org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:123) で
org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:171) で
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) で
org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:118) で
org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:407) で
org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:200)で
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) で
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) で
- ロックされた <0x000000070edf5168> (org.apache.tomcat.util.net.SocketWrapper)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) で
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) で
java.lang.Thread.run(Thread.java:662) で
org.apache.tomcat.util.threads.TaskThread.run(TaskThread.java:77) で
「ajp-bio-8010-exec-2」:
java.io.PrintStream.write(PrintStream.java:428) で
- <0x00000007001c6828> (wt.log4j.jmx.LogPrintStream) のロック待ち
org.apache.tomcat.util.log.SystemLogHandler.write(SystemLogHandler.java:174) で
sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:202) で
sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:272) で
sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:276) で
sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:122) で
- ロックされた <0x0000000710ebef48> (java.io.OutputStreamWriter)
java.io.OutputStreamWriter.flush(OutputStreamWriter.java:212) で
org.apache.log4j.helpers.QuietWriter.flush (QuietWriter.java:59) で
org.apache.log4j.WriterAppender.subAppend (WriterAppender.java:325) で
org.apache.log4j.WriterAppender.append (WriterAppender.java:162) で
org.apache.log4j.AppenderSkeleton.doAppend (AppenderSkeleton.java:257) で
- ロックされた <0x0000000710ebe788> (org.apache.log4j.ConsoleAppender)
org.apache.log4j.helpers.AppenderAttachableImpl5.appendLoopOnAppenders (AppenderAttachableImpl5.java:79) で
org.apache.log4j.Category.callAppenders (Category.java:206) で
org.apache.log4j.Category.forcedLog (Category.java:390) で
org.apache.log4j.Category.error (Category.java:321) で
wt.method.MethodContext.unregisterDeadContexts (MethodContext.java:1286) で
- ロックされた <0x0000000711364d90> (wt.method.MethodContext)
wt.httpgw.WTContextBean$ServerContextHelper.activateServerContext(WTContextBean.java:629) で
wt.httpgw.WTContextBean.activateServerContext(WTContextBean.java:537) で
wt.httpgw.WTContextBean.activate (WTContextBean.java:457) で
wt.httpgw.WTContextBean.setRequest(WTContextBean.java:311) で
wt.httpgw.WTContextBeanHandler.setRequest (WTContextBeanHandler.java:199) で
wt.httpgw.WTContextBeanHandler.<init>(WTContextBeanHandler.java:151)
wt.httpgw.filter.WTContextBeanFilter.doWithWtContextBeanHandler (WTContextBeanFilter.java:92) で
wt.httpgw.filter.WTContextBeanFilter.doFilter(WTContextBeanFilter.java:58) で
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:243) で
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) で
wt.servlet.CompressionFilter.doFilter (CompressionFilter.java:237) で
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:243) で
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) で
wt.servlet.RequestInterrupter.doFilter(RequestInterrupter.java:327) で
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:243) で
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) で
wt.servlet.ServletRequestMonitor.doFilter (ServletRequestMonitor.java:1594) で
wt.servlet.ServletRequestMonitorFilter.doFilter(ServletRequestMonitorFilter.java:56) で
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:243) で
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) で
org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:222) で
org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:123) で
org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:171) で
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) で
org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:118) で
org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:407) で
org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:200)で
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) で
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) で
- ロックされた <0x000000070ee44fb8> (org.apache.tomcat.util.net.SocketWrapper)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) で
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) で
java.lang.Thread.run(Thread.java:662) で
org.apache.tomcat.util.threads.TaskThread.run(TaskThread.java:77) で
org.apache.log4j.AppenderSkeleton.doAppend (AppenderSkeleton.java:251) で
- <0x0000000710ebe788> のロック待ち ( org.apache.log4j.ConsoleAppender )
org.apache.log4j.helpers.AppenderAttachableImpl5.appendLoopOnAppenders (AppenderAttachableImpl5.java:79) で
org.apache.log4j.Category.callAppenders (Category.java:206) で
wt.log4j.jmx.LogPrintStream$LogOutputStream.write(LogPrintStream.java:92) で
java.io.OutputStream.write(OutputStream.java:99) で
java.io.PrintStream.write(PrintStream.java:430) で
- ロックされた <0x00000007001c6828> (a wt.log4j.jmx.LogPrintStream)
sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:202) で
sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:272) で
sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:85) で
- ロックされた <0x00000007001c68a8> (java.io.OutputStreamWriter)
java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:168) で
java.io.PrintStream.newLine(PrintStream.java:496) で
- ロックされた <0x00000007001c6828> (a wt.log4j.jmx.LogPrintStream)
java.io.PrintStream.println (PrintStream.java:757) で
- ロックされた <0x00000007001c6828> (a wt.log4j.jmx.LogPrintStream)
org.apache.tomcat.util.log.SystemLogHandler.println (SystemLogHandler.java:264) で
org.apache.log4j.helpers.LogLog.error (LogLog.java:129) で
org.apache.log4j.AppenderSkeleton.doAppend (AppenderSkeleton.java:254) で
- ロックされた <0x000000070011f890> (a wt.log4j.jmx.DailyRollingFileAppender)
org.apache.log4j.helpers.AppenderAttachableImpl5.appendLoopOnAppenders (AppenderAttachableImpl5.java:79) で
org.apache.log4j.Category.callAppenders (Category.java:206) で
org.apache.log4j.Category.forcedLog (Category.java:390) で
org.apache.log4j.Category.log (Category.java:825) で
wt.servlet.ServletRequestMonitor.endRequest (ServletRequestMonitor.java:2848) で
wt.servlet.ServletRequestMonitor.doFilter(ServletRequestMonitor.java:1617) で
wt.servlet.ServletRequestMonitorFilter.doFilter(ServletRequestMonitorFilter.java:56) で
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:243) で
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) で
org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:222) で
org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:123) で
org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:171) で
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) で
org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:118) で
org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:407) で
org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:200)で
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) で
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) で
- ロックされた <0x000000070edf5168> (org.apache.tomcat.util.net.SocketWrapper)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) で
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) で
java.lang.Thread.run(Thread.java:662) で
org.apache.tomcat.util.threads.TaskThread.run(TaskThread.java:77) で
「ajp-bio-8010-exec-2」:
java.io.PrintStream.write(PrintStream.java:428) で
- <0x00000007001c6828> (wt.log4j.jmx.LogPrintStream) のロック待ち
org.apache.tomcat.util.log.SystemLogHandler.write(SystemLogHandler.java:174) で
sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:202) で
sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:272) で
sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:276) で
sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:122) で
- ロックされた <0x0000000710ebef48> (java.io.OutputStreamWriter)
java.io.OutputStreamWriter.flush(OutputStreamWriter.java:212) で
org.apache.log4j.helpers.QuietWriter.flush (QuietWriter.java:59) で
org.apache.log4j.WriterAppender.subAppend (WriterAppender.java:325) で
org.apache.log4j.WriterAppender.append (WriterAppender.java:162) で
org.apache.log4j.AppenderSkeleton.doAppend (AppenderSkeleton.java:257) で
- ロックされた <0x0000000710ebe788> (org.apache.log4j.ConsoleAppender)
org.apache.log4j.helpers.AppenderAttachableImpl5.appendLoopOnAppenders (AppenderAttachableImpl5.java:79) で
org.apache.log4j.Category.callAppenders (Category.java:206) で
org.apache.log4j.Category.forcedLog (Category.java:390) で
org.apache.log4j.Category.error (Category.java:321) で
wt.method.MethodContext.unregisterDeadContexts (MethodContext.java:1286) で
- ロックされた <0x0000000711364d90> (wt.method.MethodContext)
wt.httpgw.WTContextBean$ServerContextHelper.activateServerContext(WTContextBean.java:629) で
wt.httpgw.WTContextBean.activateServerContext(WTContextBean.java:537) で
wt.httpgw.WTContextBean.activate (WTContextBean.java:457) で
wt.httpgw.WTContextBean.setRequest(WTContextBean.java:311) で
wt.httpgw.WTContextBeanHandler.setRequest (WTContextBeanHandler.java:199) で
wt.httpgw.WTContextBeanHandler.<init>(WTContextBeanHandler.java:151)
wt.httpgw.filter.WTContextBeanFilter.doWithWtContextBeanHandler (WTContextBeanFilter.java:92) で
wt.httpgw.filter.WTContextBeanFilter.doFilter(WTContextBeanFilter.java:58) で
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:243) で
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) で
wt.servlet.CompressionFilter.doFilter (CompressionFilter.java:237) で
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:243) で
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) で
wt.servlet.RequestInterrupter.doFilter(RequestInterrupter.java:327) で
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:243) で
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) で
wt.servlet.ServletRequestMonitor.doFilter (ServletRequestMonitor.java:1594) で
wt.servlet.ServletRequestMonitorFilter.doFilter(ServletRequestMonitorFilter.java:56) で
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:243) で
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) で
org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:222) で
org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:123) で
org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:171) で
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) で
org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:118) で
org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:407) で
org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:200)で
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) で
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) で
- ロックされた <0x000000070ee44fb8> (org.apache.tomcat.util.net.SocketWrapper)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) で
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) で
java.lang.Thread.run(Thread.java:662) で
org.apache.tomcat.util.threads.TaskThread.run(TaskThread.java:77) で
最新バージョンはこちらを参照ください CS169825