Setting the 'idle timeout' config will influence what is
advertised/requested in the Open frames sent to the peer, but that in
itself does not do the work needed to send heartbeat frames or enforce
that they haven't been received. There is a 'tick' method on the
transport that is responsible for doing that, and identifying the next
point it needs to be called to do any necessary work. The 'non
connection_engine' bits are likely doing that process for you. I don't
know if/how this was exposed in the 0.12.2 connection_engine stuff,
and it may have changed since, but that perhaps may give you some
place to look before folks with more of a clue on these bits are
around later.

Questions like these would generally be better suited on the users@
list, and certainly would be more visible there.

Robbie

On 5 October 2016 at 09:44, Tobias Duckworth <tob...@duckworth.uk.com> wrote:
> Hi,
>
> I'm experiencing the exact same problem using the connection_engine variant
> of qpid-proton (version 0.12.2) - The non connection_engine build does not
> exhibit the problem.
>
> I'd like to fix this, could you explain what's involved please?
>
> If I set the connection_option idle_timeout
> (proton::connection_options().idle_timeout(proton::duration::FOREVER)), I
> can see it come out in the output when I have PN_TRACE_FRM=1 :
>
> [0x2b3904003f30]:0 -> @open(16)
> [container-id="1104db2d-87ac-492f-89d2-0803dee95435",
> hostname="TWDIoTHub.azure-devices.net:5671", channel-max=32767,
> idle-time-out=2147483647]
> [0x2b3904003f30]:  <- AMQP
> [0x2b3904003f30]:0 <- @open(16)
> [container-id="DeviceGateway_d56c48665111490aae2f99f08862d6b6",
> hostname="10.0.4.51", max-frame-size=65536, channel-max=8191,
> idle-time-out=240000]
>
> And if I trace out the transport idle timeouts I get:
>
> idle_timeout = 4294967295
> remote_idle_timeout = 240000
>
> Which seems to correlate.
>
> However, after 315 seconds I consistently get the following:
>
>  [0x2b3904006300]:0 <- @close(24) [error=@error(29)
> [condition=:"amqp:connection:forced", description="The connection was
> inactive for more than the allowed period of time."]]
>
> Seems like i need to set the remote_idle_timeout to never time out, but how
> is this possible?
>
> Thanks,
> Toby
>
>
>
> --
> View this message in context: 
> http://qpid.2158936.n2.nabble.com/Azure-Service-Bus-receiver-timing-out-with-electron-go-binding-tp7651057p7651523.html
> Sent from the Apache Qpid developers mailing list archive at Nabble.com.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
> For additional commands, e-mail: dev-h...@qpid.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to