An unreadable task payload stays stored with no way to clear it
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Feature
- Klarheit
- Muss geklärt werden
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- python, redis
- Bereich
- backend, distributed-systems
Rechercherichtung
Read threadmill/backends/redis.py, focusing on _reap_claimed_task and acquire, then trace the inspector's check_action handling for dequeue on RUNNING tasks. Resolve which terminal handling option is intended, and define done as giving operators an auditable way to clear the unreadable task without silently deleting it or repeatedly warning for the same ID.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Found while reviewing PR #69 with the SuperJoe crew. Filed as out-of-scope there.
_reap_running_queue catches ImportError and skips the task. That error means a retry callback in the stored payload is gone from the code base. The claim script has already renewed the deadline in the running set, so the entry stays there. A later pass claims the same id and logs the same error. The log repeats every CLAIM_TTL (60 seconds by default).
One part is missing. The task stays in the running set, and the inspector disables the dequeue action on the Running tab (check_action returns False for dequeue on RUNNING). An operator who sees the error cannot clear or requeue that task.
Options:
- Let the inspector clear a running task after its lease expires.
- Give the broker a terminal action for a payload whose retry callback is gone. Deletion is one option. A quarantine segment, or a failed entry that carries the raw id and the read error, is another.
Reference: threadmill/backends/redis.py (_reap_running_queue).
- Vorherrschende Sprache
- Python
- Sterne
- 19
- Forks
- 1
- Ø Merge
- 9 Std. 46 Min.
- Gemergte PRs (30 T.)
- 17
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus codingjoe/threadmill
-
bug real
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
codingjoe/threadmill#73 ·
Maintainer antworten meist innerhalb von 1 Tag
-
perf real
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
codingjoe/threadmill#74 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug real
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 45/100
codingjoe/threadmill#75 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug real
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 64/100
codingjoe/threadmill#71 ·
Maintainer antworten meist innerhalb von 1 Tag
-
perf real
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
codingjoe/threadmill#67 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in codingjoe/threadmill
Ähnliche Issues
-
changelog investigate
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
ramnes/notion-sdk-py#409 ·
-
good first issue help wanted
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
lindicaphxag-tech/kaggle#28 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
BSData/horus-heresy-3rd-edition#3211 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug needs-triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
Maintainer antworten meist innerhalb von 1 Tag
-
bug tests
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
Maintainer antworten meist innerhalb von 1 Tag