0 Replies Latest reply on Jun 9, 2011 11:08 AM by Mukund Sundararajan

    Stuck thread issue in CacheMarshaller

    Mukund Sundararajan Newbie

      All,

       

      I am using the following version of JBoss cache -

       

      java -jar jbosscache-core.jar org.jboss.cache.Version

      Version:        3.2.5.GA
      Codename:       Malagueta
      History:        (see http://jira.jboss.com/jira/browse/JBCACHE for details)

       

      We have been using the cache for a few months now. Of late I found an issue where a thread got stuck in the CacheMarshaller and never returned. Does anyone have informatoin on the following stack trace (of the stuck thread) ?

       

      "[ACTIVE] ExecuteThread: '280' for queue: 'weblogic.kernel.Default (self-tuning)'" id=2736 idx=0x5d4 tid=26494 prio=5 alive, native_blocked, daemon

          at java/io/ObjectOutputStream$BlockDataOutputStream.getUTFLength(Ljava/lang/String;)J(ObjectOutputStream.java)[optimized]

          at java/io/ObjectOutputStream.writeString(ObjectOutputStream.java:1263)[inlined]

          at java/io/ObjectOutputStream.writeObject0(ObjectOutputStream.java:1144)[inlined]

          at java/io/ObjectOutputStream.writeObject(ObjectOutputStream.java:326)[optimized]

          at java/util/concurrent/ConcurrentHashMap.writeObject(ConcurrentHashMap.java:1247)[inlined]

          at sun/reflect/GeneratedMethodAccessor160.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;(Unknown Source)[optimized]

          at sun/reflect/DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)[optimized]

          at java/lang/reflect/Method.invoke(Method.java:597)[inlined]

          at java/io/ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:945)[inlined]

          at java/io/ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1461)[optimized]

          at java/io/ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)[optimized]

          at java/io/ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)[optimized]

          at java/io/ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1509)[inlined]

          at java/io/ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1474)[optimized]

          at java/io/ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1392)[optimized]

          at java/io/ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150)[inlined]

          at java/io/ObjectOutputStream.writeObject(ObjectOutputStream.java:326)[inlined]

          at org/jboss/cache/marshall/CacheMarshaller200.marshallObject(CacheMarshaller200.java:460)[inlined]

          at org/jboss/cache/marshall/CacheMarshaller300.marshallObject(CacheMarshaller300.java:47)[optimized]

          at org/jboss/cache/marshall/CacheMarshaller200.marshallCommand(CacheMarshaller200.java:519)[inlined]

          at org/jboss/cache/marshall/CacheMarshaller200.marshallObject(CacheMarshaller200.java:314)[inlined]

          at org/jboss/cache/marshall/CacheMarshaller300.marshallObject(CacheMarshaller300.java:47)[optimized]

          at org/jboss/cache/marshall/CacheMarshaller200.marshallCommand(CacheMarshaller200.java:519)[inlined]

          at org/jboss/cache/marshall/CacheMarshaller200.marshallObject(CacheMarshaller200.java:314)[inlined]

          at org/jboss/cache/marshall/CacheMarshaller300.marshallObject(CacheMarshaller300.java:47)[optimized]

          at org/jboss/cache/marshall/CacheMarshaller200.objectToObjectStream(CacheMarshaller200.java:191)[optimized]

          at org/jboss/cache/marshall/CacheMarshaller200.objectToObjectStream(CacheMarshaller200.java:136)[optimized]

          at org/jboss/cache/marshall/VersionAwareMarshaller.objectToBuffer(VersionAwareMarshaller.java:183)[inlined]

          at org/jboss/cache/marshall/VersionAwareMarshaller.objectToBuffer(VersionAwareMarshaller.java:52)[optimized]

          at org/jboss/cache/marshall/CommandAwareRpcDispatcher$ReplicationTask.call(CommandAwareRpcDispatcher.java:383)[inlined]

          at org/jboss/cache/marshall/CommandAwareRpcDispatcher$ReplicationTask.call(CommandAwareRpcDispatcher.java:355)[optimized]

          at org/jboss/cache/util/concurrent/WithinThreadExecutor.submit(WithinThreadExecutor.java:82)[optimized]

          at org/jboss/cache/marshall/CommandAwareRpcDispatcher.invokeRemoteCommands(CommandAwareRpcDispatcher.java:210)[inlined]

          at org/jboss/cache/RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:744)[inlined]

          at org/jboss/cache/RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:712)[inlined]

          at org/jboss/cache/RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:717)[optimized]

          at org/jboss/cache/interceptors/BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:161)[inlined]

          at org/jboss/cache/interceptors/BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:135)[inlined]

          at org/jboss/cache/interceptors/BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:107)[inlined]

          at org/jboss/cache/interceptors/ReplicationInterceptor.handleCrudMethod(ReplicationInterceptor.java:160)[optimized]

          at org/jboss/cache/interceptors/ReplicationInterceptor.visitPutKeyValueCommand(ReplicationInterceptor.java:107)

          at org/jboss/cache/commands/write/PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100)[optimized]

          at org/jboss/cache/interceptors/base/CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)[inlined]

          at org/jboss/cache/interceptors/base/CommandInterceptor.handleDefault(CommandInterceptor.java:131)[optimized]

          at org/jboss/cache/commands/AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:65)[optimized]

          at org/jboss/cache/commands/write/PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100)[optimized]

          at org/jboss/cache/interceptors/base/CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)[inlined]

          at org/jboss/cache/interceptors/TxInterceptor.attachGtxAndPassUpChain(TxInterceptor.java:301)[inlined]

          at org/jboss/cache/interceptors/TxInterceptor.handleDefault(TxInterceptor.java:283)[optimized]

          at org/jboss/cache/commands/AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:65)[optimized]

          at org/jboss/cache/commands/write/PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100)[optimized]

          at org/jboss/cache/interceptors/base/CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)[inlined]

          at org/jboss/cache/interceptors/InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:178)[inlined]

          at org/jboss/cache/interceptors/InvocationContextInterceptor.visitPutKeyValueCommand(InvocationContextInterceptor.java:82)[optimized]

          at org/jboss/cache/commands/write/PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100)[optimized]

          at org/jboss/cache/interceptors/InterceptorChain.invoke(InterceptorChain.java:287)[optimized]

          at org/jboss/cache/invocation/CacheInvocationDelegate.put(CacheInvocationDelegate.java:555)

          at org/jboss/cache/invocation/NodeInvocationDelegate.put(NodeInvocationDelegate.java:377)[optimized]

         

      I am trying to figure out the root cause for this issue. This thread was stuck forever,

       

      Thanks

      Mukund