dapr / dapr/python-sdk

style: clarify workflow activity retry fields/defaults

Abierto
#836 5 comentarios 0 reacciones 0 asignados Ver en GitHub
dapr-ext-workflow good first issue kind/enhancement
Lenguaje dominante
Python
Estrellas
272
Forks
152
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

## Describe the WORKFLOW SDK feature
There are multiple gotchas in the workflow activity retry policies as described below:
```
ACTIVITY_RETRY_POLICY = RetryPolicy(
first_retry_interval=timedelta(seconds=1),

# max_number_of_attempts is the total attempt count, not the retry count
max_number_of_attempts=5,
backoff_coefficient=3,

# Set max_retry_interval else there won't be any retries
max_retry_interval=timedelta(seconds=10),

# DON'T set retry_timeout. If the timeout is hit, the entire workflow fails and the
# final activity isn't executed.
)
```

https://github.com/dapr/python-sdk/blob/main/ext/dapr-ext-workflow/dapr/ext/workflow/retry_policy.py#L26
go-sdk ref https://github.com/dapr/durabletask-go/blob/main/workflow/workflow.go#L147

acceptance criteria:
- [ ] update the field values to sensible defaults if not provided
- [ ] max_number_of_attempts can remain as is, or become deprecated (still supported) and a new field of max_attempts added that will eventuallyyyyy replace this field
- [ ] all field docs strings updated to be clearer on what they do
- [ ] ensure that retries still apply if max_retry_interval is set
- [ ] update retry_timeout to indicate that if this fails then the workflow will fail

## Release Note

RELEASE NOTE: **ADD** Clarify workflow activity retry policies fields and defaults

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.