Uploaded image for project: 'AMQ Interconnect'
  1. AMQ Interconnect
  2. ENTMQIC-1941

AMQP JMS client selectors are ignored with interconnect

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • None
    • None
    • None
    • None

      When you use AMQP JMS client to communicate with AMQ7 broker you can specify JMS selectors and receive only messages matching a specific selector. However, when connection is routed through interconnect, selectors are ignored and the client receives even messages that do not match selector.

      Reproducer:

      1. configure broker to start AMQP acceptor on port 5555 (instead of default)
      2. run the attached reproducer against broker (it should pass)
        • mvn clean test -DSelectorTest -Damqp.port=5555
      3. now configure interconnect so router so messages are routed through the router:
        listener {
            host: 0.0.0.0
            port: amqp
            authenticatePeer: no
            saslMechanisms: ANONYMOUS
        }
        
        connector {
          name: broker
          host: localhost
          port: 5555
          role: route-container
        }
        
        
        autoLink {
          addr: test.queue
          connection: broker
          dir: out
        }
        
        autoLink {
          addr: test.queue
          connection: broker
          dir: in
        }
        
        address {
            prefix: test.queue
            waypoint: yes
        }
        
        
      4. now run reproducer again but connect through the router
        • mvn clean test -DSelectorTest -Damqp.port=5672
        • Test will receive also messages which does not match the selector (and the test will fail)

              gmurthy@redhat.com Ganesh Murthy
              knetl.j@gmail.com Jakub Knetl (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              9 Start watching this issue

                Created:
                Updated:
                Resolved: