aws/aws-iot-device-sdk-cpp

Expired ACKs never deleted

samvrlewis opened this issue · 1 comments

As far as I can tell, if a MQTT client publishes a message using the PublishAsync API and registers a callback AsyncAckNotificationHandlerPtr handler, messages are never timed out or expired if no ACK is received for them.

There is a DeleteExpiredAcks function in ClientCoreState which looks like it should do this, but nothing calls it.

Is this an oversight or is there some way to manually call DeleteExpiredAcks on a client? The ClientCoreState isn't exposed to the MQTTClient so I'm thinking probably not. Should I implement time outs in my application instead?

Greetings! Sorry to say but this is a very old issue that is probably not getting as much attention as it deservers. We encourage you to check if this is still an issue in the latest release and if you find that this is still a problem, please feel free to open a new one.