in case of selectorAware=true and consumer down, what happens to those
messages? are they discarded? Is there anything sent to one of the
advisories? I can't seem to find it anywhere.
On 1 Nov 2010, at 09:48, Maciej Rakowicz wrote:
I guess, only if we keep downtimes short enough so 'matched'
messages don't expire and big enough maxPageSize or something to
keep matched messages consumed.
Does anyone know if this (i.e. AMQ-3004) is going to be worked on in
the near future?
m.
On 1 Nov 2010, at 09:32, Gary Tully wrote:
Message expiry may help in the short term, set a time to live on the
messages such that the built up unmatched messages expire and are
removed.
On 1 November 2010 09:20, Maciej Rakowicz <[email protected]>
wrote:
All,
amq 5.4.0. jdk 1.6
Scenario:
broker persistence=true, selectorAware=false
Virtual Topic with say one queue. There is a consumer A connected
to that
queue with a selector. All works fine. Consumer A dies, messages
pile up,
consumer A starts back up, missed messages are redelivered. You
can easily
verify that queue receives all posted messages while consumer's
down.
Now, adding consumer B, since selectorAware=false and consumer B
uses an
exclusive selector messages sent to consumer A are not consumed by
consumer
B. All good save the fact that all unmatched messages end up
polluting
consumer's B queue. All according to the documentation.
Flipping selectorAware to true solves one problem but introduces
another
(way more important in my setup). Unmatched messages won't pile up
on
consumer's B queue which is fine. However, if consumer A dies they
are not
sent to consumer's A queue (disappearing after reaching the topic
- I dunno
where they go) hence disabling any missed message delivery on
consumer's A
startup.
I there any way around it? I really need to handle all missed
messages with
no exception. At the same time I cannot allow stacking up messages
in each
and every queue although they are not matched.
Btw. I do not have a list of consumers in advance, the
subscription is fully
dynamic, although since broker runs persistence, once subscribed I
do have
an idea of who's subscribed even if connection is currently down.
I would appreciate any hints.
mac
--
http://blog.garytully.com
http://fusesource.com