Yep, known about this one for a while. https://issues.apache.org/jira/browse/QPIDJMS-425
>From what I recall it's due to the way we drive proton to calculate the next update, coupled with the way it calculates the next point to need a check / send, and the fact we dont know both peers timeout when we start doing that, and possibly even also coupled with specific local and remote timeouts chosen. I think I looked at changing it at the time and it was awkward, so it's just remained that way as it is still not actually incorrect as it is, it's just inconsistent in its pessimism of the remote peers advertised value. Robbie On Fri, 19 Sept 2025 at 08:53, Tomas Vavricka <[email protected]> wrote: > > Hi, > > I noticed that the first heartbeat from the Qpid JMS client (2.9.0) is sent > at the interval specified in the Open frame (60 seconds), while subsequent > heartbeats are sent at half that interval (30 seconds). Shouldn't the first > heartbeat also follow the shorter interval (30 seconds)? > > Related AMQP frames from client point of view: > > 09:17:34.525 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] SENT: Open{ > containerId='ID:69e3176a-e963-4e69-9d25-5fc85496421c:1', > hostname='localhost', maxFrameSize=1048576, channelMax=32767, > idleTimeOut=15000, outgoingLocales=null, incomingLocales=null, > offeredCapabilities=null, desiredCapabilities=[sole-connection-for-container, > DELAYED_DELIVERY, ANONYMOUS-RELAY, SHARED-SUBS], properties={product=QpidJMS, > version=2.9.0, platform=JVM: 21.0.8, 21.0.8+9-Ubuntu-0ubuntu124.04.1, Ubuntu, > OS: Linux, 6.8.0-79-generic, amd64}} > 09:17:34.536 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Open{ > containerId='ed35d671-9ee8-4152-b26f-5010a08c9e73', hostname='null', > maxFrameSize=262144, channelMax=254, idleTimeOut=60000, outgoingLocales=null, > incomingLocales=null, offeredCapabilities=[ANONYMOUS-RELAY, SHARED-SUBS, > sole-connection-for-container], desiredCapabilities=null, > properties={product=Apache Qpid Broker-J Core, version=9.2.1, > qpid.build=0a84538aee48598d57df9550312554b92a2b5f6d, > qpid.instance_name=scs-internal, qpid.virtualhost_properties_supported=true, > sole-connection-detection-policy=0}} > ... > 09:17:42.105 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:17:49.608 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:17:57.115 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:18:04.622 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:18:12.129 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:18:19.638 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:18:27.146 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:18:34.569 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] SENT: Empty Frame > 09:18:34.646 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:18:42.153 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:18:49.660 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:18:57.167 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:19:04.578 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] SENT: Empty Frame > 09:19:04.668 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:19:12.176 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:19:19.683 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:19:27.191 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > 09:19:34.587 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] SENT: Empty Frame > 09:19:34.691 [AmqpProvider :(1):[amqp://localhost:20406]] TRACE > org.apache.qpid.jms.provider.amqp.FRAMES -- [1552999801:0] RECV: Empty Frame > > Regards, > Tomas > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
