temporalio / temporalio/sdk-python
[Feature Request] Handle edge case of recursive exceptions in failure converter
Nessuno ha ancora preso questa issue.
- Lingua principale
- Python
- Stelle
- 1.2k
- Fork
- 241
- Merge medio
- 3g 21h
- PR unite (30g)
- 55
Descrizione
Is your feature request related to a problem? Please describe.
It is kind of an easy mistake to do in python:
try:
raise ValueError("test")
except Exception as e:
raise e from e
The re-raised exception will have e.__cause__ referencing itself resulting in failure to serialize error and python sdk won't report anything resulting in retries and startToClose timeouts.
Describe the solution you'd like
Handle a case when e.__cause__ == e in DefaultFailureConverter. Created a dummy pull request #696
Additional context
https://temporalio.slack.com/archives/CTT84RS0P/p1719632201314119
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia da DefaultFailureConverter e analizza l’esempio di eccezione ricorsiva nell’issue, quindi esamina la pull request fittizia #696 per l’ambito proposto. Il lavoro è completato quando il caso autoriferito di cause non fallisce più durante la serializzazione e il Python SDK può segnalarlo.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- backend
- Tipo di issue
- Funzionalità
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Stato di attività
- Ferma
- Chiarezza
- Specificata chiaramente
- Idoneità per principianti
- 35/100