stackabletech / stackabletech/stackablectl
Throttle requests when api-server tries to rate limit stackablectl
Personne n'a encore pris cette issue.
- Langage dominant
- Rust
- Étoiles
- 10
- Forks
- 5
- Merge moyen
- 4 h 41 min
- PR mergées (30 j)
- 4
Description
When trying to run stacklet list an an AWS eks cluster recently (replicated cluster, k8s 1.32) - the api-server was apparently unhappy about the rate at which requests were sent to retrieve details for Stackable objects.
soenke-desktop:~$ stackablectl stacklet list
An unrecoverable error occured: failed to execute stacklet (sub)command
Caused by these errors (recent errors listed first):
1: failed to list stacklets
2: failed to fetch data from the Kubernetes API
3: failed to fetch data from Kubernetes API
4: ApiError: storage is (re)initializing: TooManyRequests (ErrorResponse { status: "Failure", message: "storage is (re)initializing", reason: "TooManyRequests", code: 429 })
5: storage is (re)initializing: TooManyRequests
We should probably somehow honour 429 status codes and throttle requests in that case. Or maybe implement this upstream in kube-rs.
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par le chemin de requête utilisé par la commande stackablectl stacklet list et suivez la manière dont les erreurs de l’API Kubernetes sont traitées. Vérifiez si kube-rs expose déjà un comportement de nouvelle tentative ou de throttling pour les réponses HTTP 429, et reproduisez l’échec sur un cluster EKS si possible. La tâche est terminée lorsque la commande gère la condition de limitation de débit signalée sans échouer immédiatement, et que le comportement choisi est vérifié par des tests ou une reproduction.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- kubernetes, rust
- Domaine
- api, cli
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 35/100