Uploaded image for project: 'JBoss Enterprise Application Platform 4 and 5'
  1. JBoss Enterprise Application Platform 4 and 5
  2. JBPAPP-6618

Message is discarded when time out in consumer.receive() method expires

    XMLWordPrintable

Details

    • Quality Risk
    • Resolution: Done
    • Major
    • EAP_EWP 5.1.1 ER3
    • EAP 5.0.0, EAP 5.0.1, EAP_EWP 5.1.0, 4.3.0.GA_CP09, EAP_EWP 5.1.1 ER2
    • Messaging
    • None
    • NEW

    Description

      When AUTO_ACKNOWLEDGE mode for session is used then it can happen that a message which is actually received by client in receive method and acknowledged on server but not returned before given timeout from receive method is discarded and an exception is thrown:

      [junit] @main 11:24:16,227 WARN [ClientConsumer] Timed out waiting for post message processing, discarding message delegator->JBossMessage[5351110439570362]:PERSISTENT, deliveryId=78
      [junit] @main 11:24:16,227 INFO [ConnectionFactoryTest] Closing connection
      [junit] @main 11:24:16,249 INFO [ConnectionFactoryTest] Closed connection

      This is dependent on timeout, server, database and network performance.

      Problem is that message is lost and an exception thrown even when no failure on server or on client happened. Also exception will fail the client.

      Attachments

        Activity

          People

            gaohoward Howard Gao
            mnovak1@redhat.com Miroslav Novak
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: