Unfortunately, I couldn't verify if the latest snapshots resolved the issue I
questioned.  I failed to replace the activemq-core dependency from 5.7.0 to
any upper versions as I ended up facing some runtime errors with the API
I've used with 5.7.0.  It looks like, including "broker/client split" that
you mentioned, from 5.8.0 the activemq is not that backward compatible with
5.7.0 and below versions.

I have a different question (but for the same purpose: to resolve this
issue).  Is there any event handler interface the ActiveMQ provides and I
can hook up, such that I can control store cursors (e.g. AbstractStoreCursor
or TopicStorePrefetch instances) in its implementation?  The event of the
interest is "on consumer closing" (or "deactivation of the durable
subscription") in relation with this question thread, so that I can simply
wipe out the store cursor's pending list whenever the subscriber closes it
subscription.  To me, reclaiming all inflight messages back to the store
cursor's pending list that the current ActiveMQ approaches seems just too
complicated and not straight forward.  I'd rather just clean up the pending
list (store cursor cache) whenever the subscriber closes on the client side
(i.e. subscription becomes deactivated in broker) in order to avoid mess up
the store cursor's internal states...



--
View this message in context: 
http://activemq.2283324.n4.nabble.com/persistent-message-missing-to-a-durable-subscriber-when-it-reconnects-restarts-tp4665130p4665166.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to