Publishes with qos > 0 which are sent before a CONACK is received are still counted as inflight
even though they don't really get sent. This means they get sent after the retry period (20 sec default)
But this won't work when max_inflight is 1 since this means no retry will get sent and we wait untill keepalive is exhausted
This then forces a reconnect and will reset stuff so messages can be sent.