Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [mosquitto-dev] MQTT QoS 2 protocol problem

AFAIK, message IDs don't guarantee the processing order of messages. Only having

max_inflight_messages 1

would mosquitto preserve the processing order. That's... if you send messages 1, 2 and 3 to Mosquitto, Mosquitto will deliver them in that order. Otherwise, it cannot be assured.

Anyway, in relation to your problem with your second message not being "completed", from you log it seems that is the client the one that is not sending the PUBREL. The broker is sending PUBREC as expected. Which MQTT client are you using? Is it stable? In the past I had some problems when trying to send QoS2 message too fast to the broker, using an old version of PAHO.


El mié., 19 sept. 2018 a las 18:17, Jos Vos (<jos@xxxxxx>) escribió:
On Wed, Sep 19, 2018 at 06:00:45PM +0200, Manuel Domínguez Dorado wrote:

> The default value is 20 for this setting. So, using 20, you cannot assure
> that the messages are processed in order, aren't you?

To be honest, I don't see why... you could send 20 PUBLISH messages,
responded to by 20 PUBREC messages, then send 20 PUBREL messages,
and finally receive 20 PUBCOMP messsages (AFAIK the protocol allows
this, but I asked the question because I'm not 100% sure about it
either ;-)).  The sequence is defined by the message id's I think.

Furthermore, my issue was not ordering, but that fact that the second
message is never fully processed at all.

--    Jos Vos <jos@xxxxxx>
--    X/OS Experts in Open Systems BV   |   Office: +31 20 6938364
--    Amsterdam, The Netherlands        |   Mobile: +31 6 26216181

Manuel Domínguez Dorado
Software engineer (Ph.D, M.Sc., B.Sc.)
Certified Project Management Professional (PMP)

(+34) 607 418 760

Back to the top