If a function encounters a 429 HTTP error (rate limit exceeded) it simply retries two more times before continuing. In the rare case of 3 consecutive 429 HTTP errors, the last error is simply ignored and no exception is raised. This should be changed.