close() stops the attachment uploader without uploading pending attachments
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 82/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- python
- Domaine
- observability-sre
Piste de recherche
Commence à wildedge/client.py:1000, où WildEdge.close() arrête l’uploader, puis inspecte AttachmentUploader.stop() et process_pending() dans wildedge/attachments.py. Suit la manière dont close(timeout=...) et flush(timeout=...) transmettent l’état du délai d’expiration à l’uploader. Le problème est résolu lorsqu’un dernier téléversement en attente s’exécute dans le délai restant, tandis que l’arrêt sans délai d’expiration conserve son comportement actuel, avec un test de non-régression pour les pièces jointes en attente lors de l’arrêt.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
What happens
WildEdge.close() (wildedge/client.py:1000) calls AttachmentUploader.stop() (wildedge/attachments.py), which only sets the stop event and joins the thread. The uploader runs process_pending() every DEFAULT_ATTACHMENT_FLUSH_INTERVAL_SEC (5 s), so attachments registered in the last few seconds before shutdown are not uploaded. close(timeout=...) flushes events but not attachments.
They stay in the on-disk store and go out on the next start, if there is one and they are still within max_age_s. For short-lived processes (CLI runs, scripts, a kiosk app stopped with Ctrl-C) this means the last exchanges' attachments are missing, while their events reference them (attachment_count > 0).
Verified: after close(timeout=1.5) the attachments were missing; calling client.attachment_uploader.process_pending() manually before close uploaded them.
Expected
When close(timeout=...) / flush(timeout=...) is given a timeout, run a final process_pending() (bounded by the remaining timeout) before stopping the thread. Without a timeout, keep today's fast shutdown.
SDK 0.2.2.
🤖 Generated with Claude Code
- Langage dominant
- Python
- Étoiles
- 17
- Forks
- 1
- Merge moyen
- 17 h 5 min
- PR mergées (30 j)
- 34
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
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.
Autres issues de wild-edge/wildedge-python
-
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
wild-edge/wildedge-python#85 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
wild-edge/wildedge-python#78 ·
Les mainteneurs répondent en général sous 1 jour
-
vLLM integrationPeut-être à nouveau libre @piotrekno1 l’a pris il y a 123 jours, et aucune pull request n’est ouverte. Ouverte
wild-edge/wildedge-python#38 · 1 personne assignée ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement good first issue help wanted
Difficulté 3/5 1-2 jours Accessibilité débutants 48/100
wild-edge/wildedge-python#25 ·
Les mainteneurs répondent en général sous 1 jour
-
enhancement good first issue help wanted
Difficulté 4/5 3-5 jours Accessibilité débutants 25/100
wild-edge/wildedge-python#22 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de wild-edge/wildedge-python
Issues similaires
-
enhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
fossasia/visdom-dev#77 ·
Les mainteneurs répondent en général sous 4 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
aws-cloudformation/cfn-lint#4890 ·
Les mainteneurs répondent en général sous 2 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
volcengine/OpenViking#6521 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 77/100
AstrBotDevs/AstrBot#10720 ·
Les mainteneurs répondent en général sous 1 jour