OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

amqp message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [amqp] Correct behavior for link source with filters applied?




On Thu, 21 Feb 2019 at 16:23, Clemens Vasters <clemensv@microsoft.com> wrote:

The core spec is silent on what the expected behavior is for links with applied filters.

Â

Iâm looking at wire traces of Qpid JMS interacting with ActiveMQ during the Qpid JMS tests and there specifically at this here:

Â

https://github.com/apache/qpid-jms/blob/master/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/consumer/JmsMessageConsumerTest.java#L341

Â

The runtime behavior with the queue appears to be that ActiveMQ instantly skips messages that donât match the given filter and doesnât block on a message thatâs ahead of messages matching the filter.

Â

Doesnât that imply that the filter is used as a feature of the backend rather than of the link, i.e. the queue acting like a topic rather than a queue?

Â


The spec is (rightly, I think) silent on this. All the spec says is that messages that do not meet the filter do not pass through it. I think it is an implementation decision as to whether a message that does not pass the filter "blocks" the filter, or still allows others to pass through. From a JMS perspective the expectation is that a selector only picks off messages that match the selector and does not cause the consumer to block until the head of the queue has a message which matches.
Â

For a queue, I would expect that competing consumers become eligible for getting a message when it is their turn, and then thereâs a decision for whether that message is indeed transferred based on the filter and otherwise that consumer yields its turn. In this particular test, the queue should therefore block.


Again, an implementation decision (as are notions like "turn"). I believe the spec also says nothing about message ordering (terms like queue are not defined... nodes could be unordered bags of messages).
Â

Â

Thoughts?


-- Rob

--
_____________________________________________________________________________

Red Hat GmbH,Âwww.de.redhat.com,
Registered seat: Grasbrunn, Commercial register: Amtsgericht Muenchen, HRB 153243,
Managing Directors: ,Charles Cachera, Michael Cunningham, Michael O'Neill, Eric Shander



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]