Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [paho-dev] controing generated persistent messages

Hi Peter,

I can't speak for other maintainers, but I don't have much time for
spare time projects at the moment and other things have higher
priority for me than the Python client.

> Yeah, I don't want to suffer the excess overhead of QoS==2, so I use QoS==1... the continuous
> retransmission thing I had heard that MQTT does... The thing is, for the protocol to work, it has to
> leave some time for the acks to happen at all, so it cannot be too frequent.  This guy did the homework:
>
> http://www.steves-internet-guide.com/understanding-mqtt-qos-levels-part-1/
>
> It shows retransmissions happening 9 seconds, 7 seconds, then 20 seconds later...

It's retransmitting at a 20 second interval. I was under the
impression that this had been removed from the Python client years
ago, it seems I am wrong!

> Does anyone know of a reference that describes how brokers are supposed
> to decide when to resend with QoS==1 ?  I looked through the OASIS standard,
> and did not see anything,

In v3.1.1 brokers/clients must resend any unacknowledged PUBLISH
messages when they reconnect - section 4.4. They *may* retry in other
circumstances.
In v5.0 brokers/clients must resend any unacknowledged PUBLISH
messages when they reconnect - section 4.4. They must not retry in any
other circumstances.

For a long time now the general view that I am aware of is that even
in v3 message retry should only happen on reconnect.

The automatic retry needs removing because it makes the client not
compliant with the v5 spec, and is a bad idea anyway.

Regards,

Roger


Back to the top