All of my thread blocked at Ice.Logger , anyone can help me? We use ICE 3.6.

zhaozhihua2008zhaozhihua2008 Member zhihua zhaoOrganization: bocoProject: telcom project
Ice config "Ice.Trace.Network" used to be 3. If I change this property to 0, will this problem avoid?
Java application stack as follow.

"Ice.ThreadPool.Server-125" prio=10 tid=0x00007f98c0001000 nid=0xde1d waiting for monitor entry [0x00007f9994ac9000]
java.lang.Thread.State: BLOCKED (on object monitor)
at java.io.PrintStream.write(PrintStream.java:523)
- waiting to lock <0x00007fa2dede2360> (a java.io.PrintStream)
at java.io.PrintStream.print(PrintStream.java:669)
at Ice.LoggerI.write(LoggerI.java:141)
at Ice.LoggerI.trace(LoggerI.java:67)
at Ice.ConnectionI.write(ConnectionI.java:2862)
at Ice.ConnectionI.sendMessage(ConnectionI.java:2238)
at Ice.ConnectionI.sendResponse(ConnectionI.java:648)
- locked <0x00007fa9c08adac8> (a Ice.ConnectionI)
at IceInternal.IncomingAsync.__response(IncomingAsync.java:122)
at com.boco.scenemonitor.generated.statistics.svc._AMD_IStatisticsService_queryAlarmStatIncrement.ice_response(_AMD_IStatisticsService_queryAlarmStatIncrement.java:45)
at com.boco.xdpp.ice.statistics.StatisticsServiceDispImpl.queryAlarmStatIncrement_async(StatisticsServiceDispImpl.java:930)
at com.boco.scenemonitor.generated.statistics.svc._IStatisticsServiceDisp.___queryAlarmStatIncrement(_IStatisticsServiceDisp.java:974)
at com.boco.scenemonitor.generated.statistics.svc._IStatisticsServiceDisp.__dispatch(_IStatisticsServiceDisp.java:1912)
at IceInternal.Incoming.invoke(Incoming.java:221)
at Ice.ConnectionI.invokeAll(ConnectionI.java:2536)
at Ice.ConnectionI.dispatch(ConnectionI.java:1145)
at Ice.ConnectionI.message(ConnectionI.java:1056)
at IceInternal.ThreadPool.run(ThreadPool.java:395)
at IceInternal.ThreadPool.access$300(ThreadPool.java:12)
at IceInternal.ThreadPool$EventHandlerThread.run(ThreadPool.java:832)
at java.lang.Thread.run(Thread.java:722)

"Ice.ThreadPool.Server-110" prio=10 tid=0x00007f98f4001000 nid=0xde0e waiting for monitor entry [0x00007f99959d8000]
java.lang.Thread.State: BLOCKED (on object monitor)
at java.io.PrintStream.write(PrintStream.java:523)
- waiting to lock <0x00007fa2dede2360> (a java.io.PrintStream)
at java.io.PrintStream.print(PrintStream.java:669)
at Ice.LoggerI.write(LoggerI.java:141)
at Ice.LoggerI.trace(LoggerI.java:67)
at Ice.ConnectionI.write(ConnectionI.java:2862)
at Ice.ConnectionI.sendMessage(ConnectionI.java:2238)
at Ice.ConnectionI.sendResponse(ConnectionI.java:648)
- locked <0x00007fa9c19d9328> (a Ice.ConnectionI)
at IceInternal.IncomingAsync.__response(IncomingAsync.java:122)
at com.boco.scenemonitor.generated.statistics.svc._AMD_IStatisticsService_getLastStatItemsIncrement.ice_response(_AMD_IStatisticsService_getLastStatItemsIncrement.java:45)
at com.boco.xdpp.ice.statistics.StatisticsServiceDispImpl.getLastStatItemsIncrement_async(StatisticsServiceDispImpl.java:851)
at com.boco.scenemonitor.generated.statistics.svc._IStatisticsServiceDisp.___getLastStatItemsIncrement(_IStatisticsServiceDisp.java:790)
at com.boco.scenemonitor.generated.statistics.svc._IStatisticsServiceDisp.__dispatch(_IStatisticsServiceDisp.java:1840)
at IceInternal.Incoming.invoke(Incoming.java:221)
at Ice.ConnectionI.invokeAll(ConnectionI.java:2536)
at Ice.ConnectionI.dispatch(ConnectionI.java:1145)
at Ice.ConnectionI.message(ConnectionI.java:1056)
at IceInternal.ThreadPool.run(ThreadPool.java:395)
at IceInternal.ThreadPool.access$300(ThreadPool.java:12)
at IceInternal.ThreadPool$EventHandlerThread.run(ThreadPool.java:832)
at java.lang.Thread.run(Thread.java:722)

"Ice.ThreadPool.Server-108" prio=10 tid=0x00007f98fc001000 nid=0xde0c waiting for monitor entry [0x00007f9995bda000]
java.lang.Thread.State: BLOCKED (on object monitor)
at java.io.PrintStream.write(PrintStream.java:523)
- waiting to lock <0x00007fa2dede2360> (a java.io.PrintStream)
at java.io.PrintStream.print(PrintStream.java:669)
at Ice.LoggerI.write(LoggerI.java:141)
at Ice.LoggerI.trace(LoggerI.java:67)
at Ice.ConnectionI.write(ConnectionI.java:2862)
at Ice.ConnectionI.sendMessage(ConnectionI.java:2238)
at Ice.ConnectionI.sendResponse(ConnectionI.java:648)
- locked <0x00007fa9c211d768> (a Ice.ConnectionI)
at IceInternal.IncomingAsync.__response(IncomingAsync.java:122)
at com.boco.scenemonitor.generated.statistics.svc._AMD_IStatisticsService_queryAlarmStatIncrement.ice_response(_AMD_IStatisticsService_queryAlarmStatIncrement.java:45)
at com.boco.xdpp.ice.statistics.StatisticsServiceDispImpl.queryAlarmStatIncrement_async(StatisticsServiceDispImpl.java:930)
at com.boco.scenemonitor.generated.statistics.svc._IStatisticsServiceDisp.___queryAlarmStatIncrement(_IStatisticsServiceDisp.java:974)
at com.boco.scenemonitor.generated.statistics.svc._IStatisticsServiceDisp.__dispatch(_IStatisticsServiceDisp.java:1912)
at IceInternal.Incoming.invoke(Incoming.java:221)
at Ice.ConnectionI.invokeAll(ConnectionI.java:2536)
at Ice.ConnectionI.dispatch(ConnectionI.java:1145)
at Ice.ConnectionI.message(ConnectionI.java:1056)
at IceInternal.ThreadPool.run(ThreadPool.java:395)
at IceInternal.ThreadPool.access$300(ThreadPool.java:12)
at IceInternal.ThreadPool$EventHandlerThread.run(ThreadPool.java:832)
at java.lang.Thread.run(Thread.java:722)


"Ice.ThreadPool.Server-100" prio=10 tid=0x00007f99b8083800 nid=0x8589 runnable [0x00007f99970ef000]
java.lang.Thread.State: RUNNABLE
at java.io.FileOutputStream.writeBytes(Native Method)
at java.io.FileOutputStream.write(FileOutputStream.java:318)
at java.io.BufferedOutputStream.write(BufferedOutputStream.java:122)
- locked <0x00007fa2dee113b8> (a java.io.BufferedOutputStream)
at java.io.PrintStream.write(PrintStream.java:480)
- locked <0x00007fa2dede2360> (a java.io.PrintStream)
at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:221)
at sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:291)
at sun.nio.cs.StreamEncoder.flushBuffer(StreamEncoder.java:104)
- locked <0x00007fa2dab02418> (a java.io.OutputStreamWriter)
at java.io.OutputStreamWriter.flushBuffer(OutputStreamWriter.java:185)
at java.io.PrintStream.write(PrintStream.java:527)
- locked <0x00007fa2dede2360> (a java.io.PrintStream)
at java.io.PrintStream.print(PrintStream.java:669)
at Ice.LoggerI.write(LoggerI.java:141)
at Ice.LoggerI.trace(LoggerI.java:67)
at Ice.ConnectionI.read(ConnectionI.java:2840)
at Ice.ConnectionI.message(ConnectionI.java:844)
- locked <0x00007fa9c0d2d8f8> (a Ice.ConnectionI)
at IceInternal.ThreadPool.run(ThreadPool.java:395)
at IceInternal.ThreadPool.access$300(ThreadPool.java:12)
at IceInternal.ThreadPool$EventHandlerThread.run(ThreadPool.java:832)
at java.lang.Thread.run(Thread.java:722)

Comments

  • benoitbenoit Rennes, FranceAdministrators, ZeroC Staff Benoit FoucherOrganization: ZeroC, Inc.Project: Ice ZeroC Staff
    Hi,

    What is the standard error/output attached to for your Java process?

    Yes, it's likely that turning off the tracing would prevent this problem from occurring but it would be best to ensure that writes on the standard output/error don't block.

    Cheers,
    Benoit.
Sign In or Register to comment.