Uploaded image for project: 'AMQ Broker'
  1. AMQ Broker
  2. ENTMQBR-478

[C/C++] C/C++ failure with JAMQ 7 ER13

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Major Major
    • None
    • A-MQ 7.0.0.ER13
    • None
    • Hide

      1) Create queue for messages.

      java -jar amqx.jar jmsqueue <host>:<port> --action add --name "test_reply_to_address"

      2) Create queue for replies.

      java -jar amqx.jar jmsqueue <host>:<port> --action add --name "test_reply_to_address-replyQ"

      3) Send message to broker with reply-to address (message is non-durable).

      ./aac0_sender  --log-msgs dict --broker admin:admin@<host>:<port> --connection-options "{ sasl_mechanisms : 'PLAIN', protocol : 'amqp1.0' }" --address "jms.queue.test_reply_to_address" --count 1 --msg-reply-to "jms.queue.test_reply_to_address-replyQ" --msg-content "testReplyTo" 
      {'redelivered': 'False', 'reply_to': 'jms.queue.test_reply_to_address-replyQ', 'subject': 'None', 'content_type': 'text/plain', 'user_id': 'None', 'id': 'None', 'correlation_id': 'None', 'priority': '0', 'durable': 'False', 'ttl': '0', 'size': '11', , 'content': 'testReplyTo'}

      4) Receive message with reply-to address (message is non-durable) and process reply-to (message is non-durable).

      ./aac0_receiver --timeout 55 --log-msgs dict --broker admin:admin@<host>:<port> --connection-options "{ sasl_mechanisms : 'PLAIN', protocol : 'amqp1.0' }" --address "jms.queue.test_reply_to_address" --count 1 --process-reply-to

      {'redelivered': 'False', 'reply_to': 'jms.queue.test_reply_to_address-replyQ', 'subject': 'None', 'content_type': 'text/plain', 'user_id': 'None', 'id': 'None', 'correlation_id': 'None', 'priority': '0', 'durable': 'False', 'ttl': '0', 'size': '11', 'properties':

      {'x-amqp-to': 'jms.queue.test_reply_to_address', 'x-opt-jms-dest': '0', 'x-opt-jms-reply-to': '0'}

      , 'content': 'testReplyTo'}

      5) Receive reply from broker (message is durable).

      ./aac0_receiver --timeout 55 --log-msgs dict --broker admin:admin@<host>:<port> --connection-options "{ sasl_mechanisms : 'PLAIN', protocol : 'amqp1.0' }" --address "jms.queue.test_reply_to_address-replyQ"

      {'redelivered': 'False', 'reply_to': 'jms.queue.test_reply_to_address-replyQ', 'subject': 'None', 'content_type': 'text/plain', 'user_id': 'None', 'id': 'None', 'correlation_id': 'None', 'priority': '0', 'durable': 'True', 'ttl': '0', 'size': '11', 'properties':

      {'x-amqp-to': 'jms.queue.test_reply_to_address-replyQ', 'x-opt-jms-dest': '0', 'x-opt-jms-reply-to': '0'}

      , 'content': 'testReplyTo'}

      Show
      1) Create queue for messages. java -jar amqx.jar jmsqueue <host>:<port> --action add --name "test_reply_to_address" 2) Create queue for replies. java -jar amqx.jar jmsqueue <host>:<port> --action add --name "test_reply_to_address-replyQ" 3) Send message to broker with reply-to address (message is non-durable ). ./aac0_sender --log-msgs dict --broker admin:admin@<host>:<port> --connection-options "{ sasl_mechanisms : 'PLAIN', protocol : 'amqp1.0' }" --address "jms.queue.test_reply_to_address" --count 1 --msg-reply-to "jms.queue.test_reply_to_address-replyQ" --msg-content "testReplyTo" {'redelivered': 'False', 'reply_to': 'jms.queue.test_reply_to_address-replyQ', 'subject': 'None', 'content_type': 'text/plain', 'user_id': 'None', 'id': 'None', 'correlation_id': 'None', 'priority': '0', 'durable': 'False', 'ttl': '0', 'size': '11', , 'content': 'testReplyTo'} 4) Receive message with reply-to address (message is non-durable ) and process reply-to (message is non-durable ). ./aac0_receiver --timeout 55 --log-msgs dict --broker admin:admin@<host>:<port> --connection-options "{ sasl_mechanisms : 'PLAIN', protocol : 'amqp1.0' }" --address "jms.queue.test_reply_to_address" --count 1 --process-reply-to {'redelivered': 'False', 'reply_to': 'jms.queue.test_reply_to_address-replyQ', 'subject': 'None', 'content_type': 'text/plain', 'user_id': 'None', 'id': 'None', 'correlation_id': 'None', 'priority': '0', 'durable': 'False', 'ttl': '0', 'size': '11', 'properties': {'x-amqp-to': 'jms.queue.test_reply_to_address', 'x-opt-jms-dest': '0', 'x-opt-jms-reply-to': '0'} , 'content': 'testReplyTo'} 5) Receive reply from broker (message is durable ). ./aac0_receiver --timeout 55 --log-msgs dict --broker admin:admin@<host>:<port> --connection-options "{ sasl_mechanisms : 'PLAIN', protocol : 'amqp1.0' }" --address "jms.queue.test_reply_to_address-replyQ" {'redelivered': 'False', 'reply_to': 'jms.queue.test_reply_to_address-replyQ', 'subject': 'None', 'content_type': 'text/plain', 'user_id': 'None', 'id': 'None', 'correlation_id': 'None', 'priority': '0', 'durable': 'True', 'ttl': '0', 'size': '11', 'properties': {'x-amqp-to': 'jms.queue.test_reply_to_address-replyQ', 'x-opt-jms-dest': '0', 'x-opt-jms-reply-to': '0'} , 'content': 'testReplyTo'}

      C/C++ client failures against the latest ER13 build, but against the ER12 it works fine.

      The replied message is set as durable when received from broker, but was send to broker as non-durable.

              rh-ee-ataylor Andy Taylor
              rkubis_kafka_devexp Radim Kubis
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: