1 Reply Latest reply on May 27, 2010 1:56 PM by clebert.suconic

    Timed out waiting for response when sending packet

      Just wondering...what happens with a message when BlockingCallTimeout is reached and HornetQException "Timed out waiting for response when sending packet" is thrown? Is that message left "unackonowledged" on the server forever? (I only get this when hornetq is reading messages from paging files)

       

      Her is an example of the exception: (using HornetQ 2.1.0-CR1 and JBoss 5.1-GA)

       

       

      {code}

       

      2010-05-27 17:08:05,809 SEVERE [org.hornetq.core.client.impl.ClientSessionImpl] (Thread-313 (group:HornetQ-client-global-threads-41651055)) Caught jmsexecptione
      HornetQException[errorCode=3 message=Timed out waiting for response when sending packet 52]
              at org.hornetq.core.protocol.core.impl.ChannelImpl.sendBlocking(ChannelImpl.java:277)
              at org.hornetq.core.client.impl.ClientSessionImpl.end(ClientSessionImpl.java:1211)
              at org.hornetq.core.client.impl.DelegatingSession.end(DelegatingSession.java:331)
              at com.arjuna.ats.internal.jta.resources.arjunacore.XAResourceRecord.topLevelPrepare(XAResourceRecord.java:259)
              at com.arjuna.ats.arjuna.coordinator.BasicAction.doPrepare(BasicAction.java:2919)
              at com.arjuna.ats.arjuna.coordinator.BasicAction.doPrepare(BasicAction.java:2876)
              at com.arjuna.ats.arjuna.coordinator.BasicAction.prepare(BasicAction.java:2419)
              at com.arjuna.ats.arjuna.coordinator.BasicAction.End(BasicAction.java:1790)
              at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:94)
              at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:177)
              at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1423)
              at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:137)
      {code}

       

        • 1. Re: Timed out waiting for response when sending packet
          clebert.suconic

          On this case as I can see in your stack trace, you were doing a XA Prepare.

           

          Two things could happen:

           

          I - The prepare finished on the server.. but you couldn't get a response (because of a network issue.. or anything like that).

              The TM should rollback the transaction. at a later point, the TM will get a list of pending Commits, and it will be rolled back.

           

          II - The prepare didn't arrivate on the server because (because of a network issue, or anything that didn't let you receive the message).

             - The TM will just rollback the transaction and nothing else needs to be done.