Closed shiinahub closed 2 years ago
Comments on closed issues are hard for our team to see. If you need more assistance, please either tag a team member or open a new issue that references this one. If you wish to keep having a conversation with other community members under this issue feel free to do so.
Hi. I have encountered an issue of missing reply from the IoT endpoint. Sometimes I cannot observe any response from the IoT endpoint when I send a request over MQTT. A typical scenario of this issue is the AWS IoT Jobs related message exchange. Sometimes the “accepted” or “rejected” callback is not invoked after a “start-next” request is sent.
I figured out that the MQTT client implementation (
AWSIoTPythonSDK/core/protocol/paho/client.py
) based on the Paho library has a pending buffer issue which has already been solved in the Paho library. The relevant issue is found here.I reproduced this issue by writing a short script that simply subscribes to the topic
$aws/things/THING_NAME/jobs/start-next/accepted
(and also the/rejected
topic) and sends a request to the topic$aws/things/THING_NAME/jobs/start-next
periodically with a reasonably long interval. Sometimes the callback is not invoked until the nextstart-next
is sent. The test environment is as follows:I backported the fix from the Paho library by inserting the relevant lines below and I confirmed that this modification resolved the issue and I now successfully receive the “accepted” or “rejected” message timely after every request transmission.
Is this issue a bug indeed and is my description above valid? Or am I missing something?
Best Regards, Masaki Shiina.