-
I have met a connection droped issue when publish QoS 2 message to RabbitMQ. The same as the following: Is there any solution to downgrade QoS2 to QoS1 when publish MQTT messages? Any advice will be appreciated. |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 16 replies
-
@tsigcn QoS 2 is not supported by RabbitMQ. Such messages are treated as QoS 1 ones. We cannot comment on "dropped connections" without an executable way to reproduce. We do not guess in this community. |
Beta Was this translation helpful? Give feedback.
-
I can imagine that some tools would not handle a QoS downgrade gracefully. Many clients do, though, we have a good decade of evidence. I suspect that the answer to the question here is "no, there are no workarounds other than using QoS 1 which is a perfectly safe option in practice for an absolute majority of scenarios". Again, as more than a decade of evidence with several other protocols that use publisher confirms or its variation under a different name. |
Beta Was this translation helpful? Give feedback.
-
QoS 2 is unsupported in RabbitMQ, see https://www.rabbitmq.com/docs/mqtt#limitations When a client sends a PUBLISH packet with QoS level 2, RabbitMQ will
Note that RabbitMQ implements the MQTT 5.0 behaviour according to the MQTT 5.0 spec:
|
Beta Was this translation helpful? Give feedback.
-
@tsigcn as explained here, RabbitMQ follows the MQTT 5.0 spec when QoS 2 is requested. If you would like to see RabbitMQ's behavior changed (to support a downgrade to QoS 1, for instance), you could implement it yourself, or you could contact Broadcom to become a paying RabbitMQ user, and make an official feature request. |
Beta Was this translation helpful? Give feedback.
QoS 2 is unsupported in RabbitMQ, see https://www.rabbitmq.com/docs/mqtt#limitations
When a client sends a PUBLISH packet with QoS level 2, RabbitMQ will
Note that RabbitMQ implements the MQTT 5.0 behaviour according to the MQTT 5.0 spec: