I am learning MQTT in python and the protocol for QOS = 1 and 2. I'm concerned about my Raspberry Pi getting too bogged down, or if there are other unexpected problems at the server. I can see there are limits for queued and inflight messages as shown below.
So far I haven't been able to read about or understand what happens to my newest published message if these queues hit either of their limits. I would guess that the newest message gets top treatment and the oldest are dropped when a limit is reached, but I can't find that stated explicitly.
Is that in fact what will happen?
"Bonus points:" Is there a way to learn which Message IDs are still held in the queue?
import paho.mqtt.client as mqtt
client = mqtt.Client("I am your client")
Reading about qos 1 and 2
help(client.max_queued_messages_set)
yields
Set the maximum number of messages in the outgoing message queue. 0 means unlimited.
and
help(client.max_inflight_messages_set)
yields
Set the maximum number of messages with QoS>0 that can be part way through their network flow at once. Defaults to 20.