Here is some more info:

I enabled debug logging and can see where the problem is (however I still
don't know what the solution is).

I ran my test again and send 5000 messages to one broker which is configured
to store-and-forward the message to broker2. Two brokers are connected via
network of brokers.

After killing brokers randomly, I ended up 4997 messages in broker2. I wrote
a consumer that will consume all messages from broker2 and create a
spreadsheet with all properties. Using this spreadsheet I can pinpoint which
messages have failed using sequential ids. One of the messages that has
failed is #3751.

Looking at the debug log I can see:

(line 976) bridging (broker1 -> broker2) messageId =
ID:HAM-NB-073-56843-634438260819794239-1:0:1:1:3748
(line 979) bridging (broker1 -> broker2) messageId =
ID:HAM-NB-073-56843-634438260819794239-1:0:1:1:3749
(line 983) bridging (broker1 -> broker2) messageId =
ID:HAM-NB-073-56843-634438260819794239-1:0:1:1:3750

Then broker1 is killed.
When it comes back, it says:
(line 1311) last stored sequence id set: 3751
(line 1312) suppressing duplicate message send
[ID:HAM-NB-073-56843-634438260819794239-1:0:1:1:3751] with
producerSequenceId [3751] less than last stored: 3751

There is not message sent information in the log for 3751!!!

I've attached the full log for your perusal. I'd appreciate any help to
solve this problem.

This test was done with apache-activemq-5.4.2-fuse-02-00.

http://activemq.2283324.n4.nabble.com/file/n3602343/activemq.log.4
activemq.log.4 



--
View this message in context: 
http://activemq.2283324.n4.nabble.com/Message-loss-in-network-of-brokers-transactional-send-tp3588714p3602343.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to