Infrastructure exceptions in TaskActivityExceptions are not properly serialized
- Lenguaje dominante
- C#
- Estrellas
- 1.7k
- Forks
- 335
- Merge medio
- 2 d 23 h
- PR fusionados (30 d)
- 6
Descripción
As pointed out by @robs in [this Durable Functions issue](https://github.com/Azure/azure-functions-durable-extension/issues/697), this [catch block](https://github.com/Azure/durabletask/blob/main/src/DurableTask.Core/TaskActivityDispatcher.cs#L172) sets the details to be more of an error message rather than a serialized exception, resulting in a `TaskFailedExceptionDeserializationException` in the orchestrator function. This is very miselading.
Fixing this to properly serialize the original exception thrown by the infrastructure could debatably be considered a breaking change, as customers may be taking a dependency on `TaskFailedExceptionDeserializationException` being thrown, but it feels more like a bug fix.
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Comienza leyendo src/DurableTask.Core/TaskActivityDispatcher.cs alrededor de la línea 172 y el issue vinculado de Durable Functions; sigue cómo el bloque catch rellena TaskActivityExceptions. Se considera terminado cuando la excepción de infraestructura original se serializa correctamente, de modo que el orquestador ya no recibe TaskFailedExceptionDeserializationException.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- csharp
- Área
- distributed-systems
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 45/100