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

A-MQ 7 (Artemis) not functional with AMQP 1.0 C++ and Python clients

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Blocker
    • A-MQ 7.0.0.ER4
    • None
    • None
    • Hide

      The client is C++, and needs a qpid-proton build to be present. It is built with cmake as follows:
      1. Extract tar file
      2. Create a build directory:
      $cd artemis-reproducer
      $mkdir build
      3. Run cmake, point config to qpid-proton build
      $cd build
      $cmake ..
      The default expected location for qpid-proton is ~/qpid-proton. If it is not in this location, then:
      $ccmake ..
      (In screen that shows, set PROTON_DIR to the correct path to the qpid-proton directory)
      Use keys c to configure, e to exit config message, then g to generate.
      4. Build the examples
      $make
      5. Start broker, then run examples:
      $./src/simple_send
      $./src/simple_recv

      Show
      The client is C++, and needs a qpid-proton build to be present. It is built with cmake as follows: 1. Extract tar file 2. Create a build directory: $cd artemis-reproducer $mkdir build 3. Run cmake, point config to qpid-proton build $cd build $cmake .. The default expected location for qpid-proton is ~/qpid-proton. If it is not in this location, then: $ccmake .. (In screen that shows, set PROTON_DIR to the correct path to the qpid-proton directory) Use keys c to configure, e to exit config message, then g to generate. 4. Build the examples $make 5. Start broker, then run examples: $./src/simple_send $./src/simple_recv

    Description

      When running AMQP 1.0 clients against an Artemis broker, the broker produces NPEs, ClassCastExceptions and "!!!!! Readable!!!!!!!" messages, and the client is not functional. The same client runs successfully against A-MQ 5 and Qpid brokers. The clients all use the qpid-proton reactor APIs.

      The client requires queues to be created as required, so the broker.xml contains a <auto-create-jms-queues>true</auto-create-jms-queues> in the core.address-settings section. The configuration file is attached.

      The following additional files are attached:
      broker_output.artemis.txt - artimes broker log
      client_output.artemis.txt - client output when run against artemis
      client_output.activemq5.txt - expected client output (obtained from running against activemq5)

      Attachments

        1. artemis-reproducer.HOWTO.txt
          30 kB
        2. artemis-reproducer.tar.gz
          5 kB
        3. artemis-reproducer.tar.gz
          5 kB
        4. broker_output.artemis.txt
          31 kB
        5. broker.xml
          4 kB
        6. client_output.activemq5.txt
          3 kB
        7. client_output.artemis.txt
          2 kB

        Issue Links

          Activity

            People

              rh-ee-ataylor Andy Taylor
              kvanderr@redhat.com Kim van der Riet
              Petr Matousek Petr Matousek
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: