async_mqtt
async_mqtt copied to clipboard
MQTT (V3.1.1) Reconnect does not work (when broker restarts)
Using the demo code from https://github.com/redboltz/async_mqtt/blob/main/example/cl_cpp20coro_mqtt_sub.cpp
Expected: Reconnect will work when the broker restarts
Actual: Reconnect fails when the broker restarts. Using Mosquitto as broker, exiting Mosquitto and starting it up again will cause the client to fail to reconnect.
mqtt undlerlying handshaked
v3_1_1::connack{rc:accepted,sp:0}
v3_1_1::suback{pid:1,[success_maximum_qos_0,success_maximum_qos_1,success_maximum_qos_2]}
End of file
mqtt undlerlying handshaked
Operation canceled
mqtt undlerlying handshaked
v3_1_1::connack{rc:accepted,sp:0}
v3_1_1::suback{pid:1,[success_maximum_qos_0,success_maximum_qos_1,success_maximum_qos_2]}
End of file
mqtt undlerlying handshaked
packet_not_allowed_to_send
mqtt undlerlying handshaked
packet_not_allowed_to_send
# First instance of Mosquitto
1743629489: New connection from 127.0.0.1:51418 on port 1883.
1743629489: New client connected from 127.0.0.1:51418 as auto-0E58695A-9003-74D7-BCCB-BFB893788023 (p2, c1, k0).
^C1743629493: mosquitto version 2.0.11 terminating
# Restarting Mosquitto
user@host: $ mosquitto
1743629498: mosquitto version 2.0.11 running
1743629498: New connection from 127.0.0.1:50912 on port 1883.
1743629498: New client connected from 127.0.0.1:50912 as auto-59741398-8CDD-27EA-CED5-6BBA6E611FF9 (p2, c1, k0).
1743629499: Client auto-59741398-8CDD-27EA-CED5-6BBA6E611FF9 closed its connection.
1743629499: New connection from 127.0.0.1:50928 on port 1883.
1743629500: Client <unknown> closed its connection.
1743629500: New connection from 127.0.0.1:50934 on port 1883.
1743629501: New connection from 127.0.0.1:50942 on port 1883.
1743629501: Client <unknown> closed its connection.
Workaround: Create a new instance of awaitable_client when connection to the broker drops