Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-6466

Client may send duplicate basic.rejects (or messageRelease) during consumer close

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 0.18, 0.22, 0.32
    • qpid-java-6.0
    • JMS AMQP 0-x
    • None

    Description

      During a MessageConsumer#close() currently the Qpid Client uses both the the IO thread (BasicCancelOkMethodHandler#methodReceive() > AMQProtocolSession#confirmConsumerCancelled() -> ... -> AMQSession#rejectMessagesForConsumerTag()) and the Dispatcher (AMQSession.Dispatcher#notifyConsumer) to return any messages in the pre dispatch queue to the Broker.

      There is a race where both may return the same message, causing a duplicate to be received by the Broker.

      On the 0-8 path with the Java Broker, it is reported like this:

      2015-03-26 21:54:58,011 WARN  [IO-/127.0.0.1:52562] (v0_8.AMQChannel) - Dropping reject request as message is null for tag:113
      

      Whilst harmless, the log message causes confusion for the user.

      Attachments

        Activity

          People

            kwall Keith Wall
            kwall Keith Wall
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: