Uploaded image for project: 'JBoss A-MQ'
  1. JBoss A-MQ
  2. ENTMQ-1909

C++ client subscription on topic is receiving only the first message sent

XMLWordPrintable

    • Hide
      1. start a broker with jmx enabled
      2. create a jmstopic
        java  -jar /var/dtests/node_data/clients/amqx.jar  jmstopic --host localhost:1099 -broker-type activemq --action add --name "test_node_durable_msg_topic"
        
      3. Create a subscription on that topic
        /var/dtests/node_data/clients/aac0_receiver --log-msgs dict --broker admin:admin@localhost --connection-options "{  protocol : 'amqp1.0' }" --address "'topic://test_node_durable_msg_topic'" --count 10 --timeout 120
        
      4. send several messages towards the topic
        /var/dtests/node_data/clients/aac0_sender  --log-msgs dict --broker admin:admin@localhost --connection-options "{ protocol : 'amqp1.0' }" --address "'topic://test_node_durable_msg_topic'" --count 10
        
      5. only one message received by the subscription, receiver client did not finish execution (expected 10 messages)


      QE test that reproduces the issue:

      • JAMQNodeAac000Tests/test_node_durable_msg_topic
      Show
      start a broker with jmx enabled create a jmstopic java -jar / var /dtests/node_data/clients/amqx.jar jmstopic --host localhost:1099 -broker-type activemq --action add --name "test_node_durable_msg_topic" Create a subscription on that topic / var /dtests/node_data/clients/aac0_receiver --log-msgs dict --broker admin:admin@localhost --connection-options "{ protocol : 'amqp1.0' }" --address " 'topic: //test_node_durable_msg_topic' " --count 10 --timeout 120 send several messages towards the topic / var /dtests/node_data/clients/aac0_sender --log-msgs dict --broker admin:admin@localhost --connection-options "{ protocol : 'amqp1.0' }" --address " 'topic: //test_node_durable_msg_topic' " --count 10 only one message received by the subscription, receiver client did not finish execution (expected 10 messages) QE test that reproduces the issue: JAMQNodeAac000Tests/test_node_durable_msg_topic

      When QE qpid-cpp client is used for a topic subscription, only the first message sent towards the topic is received by the subscription. This behaviour change was triggered by the broker upgrade to AMQ 6.3.0 and thus the issue is marked as regression.
      AMQ 6.2.1 broker do not suffer from that (all the messages sent are received by the subscription).

      This is probably somehow connected to the QE client implementation because when other client are used the issue does not appear. In example when qpid-receive or QE python proton client is used to consume the messages, everything works as expected and all the messages are received by the subscription. Therefore I don't see it as a blocker issue, but it's definitely a behaviour change that shall be revisited and explained.

      QE Qpid C++ clients sources:

              gtully@redhat.com Gary Tully
              pematous Petr Matousek
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

                Created:
                Updated:
                Resolved: