1) I've always found far more value in the information exposed via JMX than
in the content shown on the web console. The web console is great for basic
system monitoring, but anytime you want to understand what's actually going
on inside the broker, I've always found that JMX was far more useful. Since
you're in the latter category, you can probably guess what my first
suggestion is.

2) I don't remember what seeing consumers without a session indicates. I've
noticed (on versions in the 5.8 to 5.10 range, which are the only versions
I've ever run) that the JMX information always seemed to include a number
of consumers that had previously disconnected, though I've never tried to
figure out exactly why they weren't removed as soon as they were
disconnected. But it's possible that that's all they are.

3) Either way, it's not going to hurt anything to use
replayWhenNoConsumers, so there's no reason for you not to use it. In the
worst case, it doesn't prevent messages from getting stuck and we have to
figure out why, but that's where we are already so that's not a reason to
not use it.

4) I'd need more information about precisely where you're applying that
durable=true attribute, but my initial thought is that it's not doing what
you think it's doing. Durability only applies to consumers, and only to
topic consumers, so it's irrelevant for queues. And even for topics, it's
not sufficient to ensure that messages survive a broker restart. Durability
ensures that the consumer is still deemed to be subscribed to the topic
even if the consumer disconnects (say, because the broker restarts), which
means that topic messages that have not yet been consumed by that consumer
are not deemed to be fully consumed and so the broker can't immediately
discard those messages upon restarting. However, for any of that to matter,
you have to have written each message to disk in the first place; if you
didn't, it's just in RAM, and it's lost when the broker is restarted. That
is called persistence, and it's controlled by the message producer, so if
your producers aren't setting that attribute (or if you didn't configure a
plugin to force all messages to be persistent), then that's why you're
losing messages when you restart. Details on how to set the flag when
sending messages are on the wiki.

Tim

On Sep 19, 2017 8:46 AM, "rockies" <lakshmi.chapar...@bd.com> wrote:

> Thank you Tim and Raffi,
>
> I made the change and re-started brokers.
>
> Tim,
>
> I do see consumers that have no session attached in ActiveMQ Web Console.
> Can I still set replayWhenNoConsumers ? One other thing we have to deal
> with
> is that whenever brokers are re-started most of our queues disappear.
> Doesn't the property durable="true" on JMS leave those queues in place
> after
> a re-start ?
>
>
> Appreciate your time !
>
>
>
> --
> Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-User-
> f2341805.html
>

Reply via email to