Rate limiting API feels broken on Gitlab.com
After switching Gitlab.com to Cloudflare, I've figured that one of my scripts failed to work (occasional 429). My initial idea was that Cloudflare made things faster and now my scripts hits into rate limits. I've turned down the script, and started playing with curl with weird results.
Script:
while :; do curl -X GET -sI 'https://gitlab.com/api/v4/projects/16922768?private_token=<REDACTED>' | grep ratelimit-observed; echo '.' ; done
Expected output: monotonic (or at least similar to monotonic) increase in ratelimit-observed
. No 429, since I'm doing requests one-by-one, and it definitely takes more than 0.1 second to process request for me (documented limit is 10rps)
Actual result: non-monotonic ratelimit-observed
, occasional 429
script output
ratelimit-observed: 28 . ratelimit-observed: 13 . ratelimit-observed: 1 . ratelimit-observed: 4 . ratelimit-observed: 5 . ratelimit-observed: 6 . ratelimit-observed: 105 . ratelimit-observed: 7 . ratelimit-observed: 8 . ratelimit-observed: 7 . . ratelimit-observed: 9 . ratelimit-observed: 42 . ratelimit-observed: 45 . ratelimit-observed: 8 . ratelimit-observed: 9 . ratelimit-observed: 241 . ratelimit-observed: 1 . ratelimit-observed: 10 . ratelimit-observed: 11 . ratelimit-observed: 1 . ratelimit-observed: 12 . ratelimit-observed: 14 . ratelimit-observed: 17 . ratelimit-observed: 7 . ratelimit-observed: 4 . ratelimit-observed: 20 . ratelimit-observed: 21 . ratelimit-observed: 21 . ratelimit-observed: 13 . ratelimit-observed: 4
A bit weird thing for me, that I rarely catch 429
if I swap 16922768
(which is private project), with, for example 278964
(which is gitlab
project)