[ 
https://issues.apache.org/jira/browse/ARTEMIS-1272?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16080571#comment-16080571
 ] 

ASF GitHub Bot commented on ARTEMIS-1272:
-----------------------------------------

Github user mtaylor commented on a diff in the pull request:

    https://github.com/apache/activemq-artemis/pull/1389#discussion_r126466676
  
    --- Diff: tests/integration-tests/pom.xml ---
    @@ -177,6 +178,11 @@
           <!-- END MQTT Deps -->
     
           <dependency>
    +         <groupId>org.awaitility</groupId>
    +         <artifactId>awaitility</artifactId>
    +         <version>2.0.0</version>
    +      </dependency>
    +      <dependency>
    --- End diff --
    
    Rather than introducing new deps, you can re-use the wait utility we 
already in the tests.  I'll add an example.


> 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: 1.5.3, 2.1.0
>            Reporter: Odyldzhon Toshbekov
>
> When MQTT client send acknowledgement Artemis acknowledge previous sent 
> 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
> A.R. Artemis will remove from queue first and second message
> E.R. Artemis should remove only second message
> 4. Send acknowledgement for 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