Hello.
I've hit an odd behavior in Artemis (tested with 2.32 and 2.37), and I'd like
to know if it's a bug or a feature.
Say I have an anycast address `addr1` and two queues: `q1` and `q2`. Both
queues have a filter on them, and the `q2`'s filter is a negation of the `q1`'s
filter. Schematically:
* addr1
* q1 [key = 'value']
* q2 [NOT (key = 'value')]
Intuitively, whatever message does not fulfill the first condition (either
there's no `key` property, or its value is different) should be routed to `q2`.
And that works but only as long as the message has at least some properties.
In other words:
* A message with property `key` of value `value` ends up in the `q1` queue.
* A message with property `key` of value `foobar` ends up in the `q2` queue.
* A message with property `foo` of value `bar` ends up in the `q2` queue.
* And finally, a message with no properties is lost.
Is it really supposed to work like this?
Thanks.
Jan