We are using proton-j Messenger to build clients that subscribe to an AMQP
broker to get messages from a queue.
It all works fine, we are getting messages and are able to process them.
However, we observe 2 behaviours concerning connections when the clients run
for a long time:
1. After a couple of hours, it seems that the broker resets the
connection (see attached proton_conn_reset.log). After that, the client never
gets messages again and seems to hang in the Messenger.recv() method. Is there
a possibility to recover the messenger after connection resets, i.e. try to
2. When the connection gets lost, the messenger crashes (see attached
proton_conn_lost.log) with an IllegalArgumentException. Again, is there a
possibility to recover from that, i.e. trigger the client to try to reconnect a
certain number of times until the connection is available again?
At the moment, the only possibility we see is to create a new messenger that
tries to connect to the broker again. But this would require to get notified
that the connection was reset, which is not the case because the IOException
caused by the connection reset is swallowed somewhere and the caller to recv()
is not aware of the fact that something went wrong.
Tel.: +49 (0)7541/282-177
Fax: +49 (0)7541/282-199
Principal Office: Bahnhofplatz 1 | 88045 Friedrichshafen | Germany
Court Registration: Amtsgericht Ulm | HRB 728293
Geschäftsführer/Managing Director: Antonio Maria Gonzalez Gorostiza
This message may contain confidential information and is intended only for the
individual named. If you are not the named addressee you should not
disseminate, distribute or copy this e-mail. Please notify the sender
immediately by e-mail if you have received this e-mail by mistake and delete
this e-mail from your system.