Persistance of MQTT "Will & Testament" / "Death" message across protocols #9762
Replies: 3 comments 3 replies
-
Hello and thanks for using RabbitMQ.
Thank you |
Beta Was this translation helpful? Give feedback.
-
@Robbert-Brand without an executable way to reproduce we have to guess as to what your routing keys are. And we do not guess in this community. MQTT topic structure uses different separators/wildcards from AMQP 0-9-1, and the translation has its limits, as has been discussed multiple times over the years. So it can be that some of the messages happen to route correctly but others use a more complex topic structure that does not route with the AMQP 0-9-1 bindings used. |
Beta Was this translation helpful? Give feedback.
-
Gentlemen, Thank you for your quick answers, and rightfully questions. I might have rushed my previous message, and I apologise for the lack of information. To further complete my previous message: What version of RabbitMQ are you using?
Set-up:
Pika listener:
Paho Mqtt script:
Result:
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Describe the bug
Dear RabbitMQ,
We are connecting an MQTT client to the RabbitMQ data broker via the latest MQTT pluging. We set the MQTT "will" / "death" message for MQTT the client with a QoS of 1. Upon disconnection by the client, the will is send across all MQTT clients with QoS 1 who are subscribed to the related topic. (As expected)
However, we also subscribe a RabbitMQ client to the MQTT message exchange via a rabbitMQ queue connection using Pika. We consistently recieve all MQTT messages via the durable rabbitMQ queue, with the exception of MQTT Death messages which we miss 50% of the time.
A code sample:
Reproduction steps
Expected behavior
A death message is sent via MQTT with QoS 1, to be guaranteed to arrive via the RabbitMQ Quorum queue connection.
Additional context
No response
Beta Was this translation helpful? Give feedback.
All reactions