Odyldzhon Toshbekov created ARTEMIS-1272:
--------------------------------------------

             Summary: Artemis incorrectly handle MQTT acknowledgement
                 Key: ARTEMIS-1272
                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1272
             Project: ActiveMQ Artemis
          Issue Type: Bug
          Components: MQTT
    Affects Versions: 2.1.0, 1.5.3
            Reporter: Odyldzhon Toshbekov


When MQTT client send acknowledgement Artemis acknowledge previous messages.
Test case:
1. Connect to Broker (client 1)
2. Connect to Broker (client 2)
2. Send two messages with QOS = 1
3. Send acknowledgement for second message
E.R. Broker acknowledge second message
A.R. Broker acknowledge first and second messages
4. Send acknowledgement for first message
E.R. Broker acknowledge first message
A.R. WARN message "attempted to Ack already Ack'd message"

The cause of the problem located in the class MQTTPublisherManager methods 
"handlePubRec", "handlePubComp", "handlePubAck" and "sendMessage"

Fix: replace "session.getServerSession().acknowledge" to 
session.getServerSession().individualAcknowledge 




--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to