[Feature]: Add targeted retries for retryable SerDes failures
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 52/100
Direzione di ricerca
Inizia individuando la classificazione esistente di RetryableSerDesError e la chiamata SerDes configurata descritta nell’issue; confronta il comportamento a livello di stage in aws/aws-durable-execution-sdk-java#648. Il lavoro è completo quando vengono ritentati solo i fallimenti SerDes ritentabili, con test della policy limitati e deterministici, mentre gli errori non ritentabili e i dettagli dell’eccezione finale rimangono invariati.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
What would you like?
Add a targeted retry decorator for transient SerDes failures.
Python already exposes RetryableSerDesError, but the configured SerDes call is currently propagated after the first failure. External-storage transformations such as S3 Files/EFS access can fail transiently without requiring the entire durable operation to be rerun.
Possible Implementation
- Provide a
RetrySerDesdecorator, and make it usable as a stage if/when a composable SerDes pipeline is added. - Retry only
RetryableSerDesError; propagateSerDesErrorand other non-retryable failures immediately. - Accept a bounded retry policy with maximum attempts and optional backoff/jitter, reusing existing retry-strategy concepts where that does not imply durable checkpoints.
- Pass the same value/data and
SerDesContextto every attempt. - Preserve the final exception type, causal chain, error data, and stack information after exhaustion.
- Ensure retries wrap only the selected SerDes transformation rather than restarting the value codec or durable operation.
- Add deterministic tests with an injected sleeper/clock so retry tests do not depend on real delays.
Is this a breaking change?
No.
Does this require an RFC?
No.
Additional Context
This builds on the existing RetryableSerDesError classification rather than introducing another recoverability mechanism. The Java SDK implementation in aws/aws-durable-execution-sdk-java#648 provides a stage-level retry decorator with the same targeted behavior.
- Lingua principale
- Python
- Stelle
- 58
- Fork
- 32
- Merge medio
- 1g 6h
- PR unite (30g)
- 80
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi 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.
Altre issue di aws/aws-durable-execution-sdk-python
-
enhancement needs-triage
Difficoltà 1/5 1-3 ore Idoneità per principianti 72/100
aws/aws-durable-execution-sdk-python#927 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
aws/aws-durable-execution-sdk-python#875 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
aws/aws-durable-execution-sdk-python#794 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 58/100
aws/aws-durable-execution-sdk-python#921 ·
I maintainer di solito rispondono entro 1 giorno
-
[Bug]: JS examples CI still invokes Jest after Vitest migrationForse già presa Una pull request collegata a questa issue è aperta o già unita. Apertabug needs-triage
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
aws/aws-durable-execution-sdk-python#918 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di aws/aws-durable-execution-sdk-python
Issue simili
-
physical
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
antonyrag/ragleap-core#1339 ·
-
enhancement good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
AllenCell/SubCellSeg#5 ·
-
[🐛 Bug]: oidc_authverifier.py strips trailing slash causing "Invalid token: Invalid issuer" errorAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
keephq/keep#6934 · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
bug game: 01008BA02525A000 ios
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
needs-triage
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 87/100
gke-labs/kube-agents#5501 ·
I maintainer di solito rispondono entro 1 giorno