After a client exceeds a request rate limit and gets 429
, even after waiting 1 minute (enough for the rate limit to reset) the status code of the next one or two requests can still be 429
.
Explanation: This odd behavior originates from GCP built-in functionality and it’s out of our reach at the moment since it would require making major changes to our current architecture.
Workaround: After waiting 1 minute, if the client still gets 429
, wait 1 second before trying again, and wait 1 more second if still getting 429
. After that requests should continue to be allowed while not exceeding the rate limit again.
Recommendation: Check the “Request rate” section under “Limits” in the API documentation and implement the client in a way it never exceeds the limits.
Otherwise implement handling the 429
status responses taking into account this bug.