Dear all,
I am writing as I am experiencing an issue with Qpid Proton and some
specific AMQP brokers.
In particular, I am currently using Qpid Proton 0.33.0 (the C++ version) in
a project. In order to set up the client, I based my code on the examples
available in the official documentation (like
https://qpid.apache.org/releases/qpid-proton-0.33.0/proton/cpp/api/simple_recv_8cpp-example.html
).
My client should subscribe to a specific topic and then wait for new
messages (it is expected to be a "receive-only" AMQP client), which may
come at a very fast rate, but which may also not come for several minutes
or hours (and, in this case, it should remain connected to the broker
waiting for the moment in time in which new messages will come).
With some AMQP brokers (in particular, with an almost vanilla Apache
ActiveMQ version), everything is working properly, even if I do not set any
idle timeout with "co.idle_timeout(proton::duration(<some duration>));". If
I do not set a connection idle timeout, I can see my client sending to the
broker empty heartbeat messages with a periodicity of 7.5 seconds (probably
due to some settings in the broker which require this periodicity to
consider the client up and running). If, instead, I set a co.idle_timeout,
I also see the broker sending me empty heartbeat messages at a periodicity
equal to 1/4 of the idle timeout, which is what I am expecting.
However, with some other AMQP brokers (in particular, with a custom broker
based on ActiveMQ), I experience, after a completely variable amount of
time (spanning from few minutes to several hours), a disconnection, with
the error:
"amqp:resource-limit-exceeded: local-idle-timeout expired"
Setting any local idle timeout with "co.idle_timeout()" (including 100,
1000, FOREVER and several other options) does not seem to solve the issue:
the client gets randomly disconnected after a while.
As in the previous case, I can see the empty heartbeat messages from my
client to the broker every 7.5 seconds.
Do you know why this is happening? Could this be a bug in Qpid Proton 0.33?
Or could it be an issue related to how the broker manages the reception of
the heartbeats coming from my client?

Thank you very much in advance,
Francesco

Reply via email to