There have been a number of times the tap has hit a 429 Too Many Requests error and the inbuilt back-off strategy has not been able to recover the sync. We should investigate if there is a better way to handle these situations, such as
respecting a remaining rate limit value, if available (typically a header)
There have been a number of times the tap has hit a
429 Too Many Requests
error and the inbuilt back-off strategy has not been able to recover the sync. We should investigate if there is a better way to handle these situations, such asbackoff_max_tries
)Error logs
``` 2024-10-28T18:04:32.667482Z [info ] 2024-10-28 18:04:32,667 | INFO | singer_sdk.metrics | METRIC: {"type": "timer", "metric": "http_request_duration", "value": 0.006067, "tags": {"stream": "sellables", "endpoint": "/sellables", "http_status_code": 429, "status": "failed"}} cmd_type=elb consumer=False job_name=dev:tap-veeqo-to-target-postgres:54b5b47e-efc1-4169-a278-8aae9a590cb6 name=tap-veeqo producer=True run_id=38201f4f-e882-448d-a7d6-cbece59e66a5 stdio=stderr string_id=tap-veeqo 2024-10-28T18:04:32.667813Z [info ] 2024-10-28 18:04:32,667 | INFO | backoff | Backing off _request(...) for 2.2s (singer_sdk.exceptions.RetriableAPIError: 429 Client Error: Too Many Requests for path: /sellables) cmd_type=elb consumer=False job_name=dev:tap-veeqo-to-target-postgres:54b5b47e-efc1-4169-a278-8aae9a590cb6 name=tap-veeqo producer=True run_id=38201f4f-e882-448d-a7d6-cbece59e66a5 stdio=stderr string_id=tap-veeqo 2024-10-28T18:04:32.668060Z [info ] 2024-10-28 18:04:32,667 | ERROR | root | Backing off 2.24 seconds after 1 tries calling function