Azure / Azure/durabletask

External event discarded when the durable function is in Pending state

Abierto
#720 1 comentario 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
C#
Estrellas
1.7k
Forks
335
Merge medio
2 d 23 h
PR fusionados (30 d)
6

Descripción

**Description**
After a long period of inactivity, if we start a new instance of the durable function the initial status is _OrchestrationRuntimeStatus.Pending_ and after 2 seconds the status is updated to _Running_.

If we send and external event to the durable function, invoking the _IDurableOrchestrationClient.RaiseEventAsync()_, while the status is Pending, sometimes the event is discarded!

**Expected behavior**
We expect that the event is not discarded while the status is pending.

**Actual behavior**
As from the application insights the event is dequeued and discarded because the instance of the durable function not exists ("No such instance") but it's not true.
![MicrosoftTeams-image](https://user-images.githubusercontent.com/48127230/166218980-98601f05-b1c3-42a1-841a-76df0a42246b.png).
After the RaiseEventAsync(), our application log a message with the status of the durable fuction that was _Pending_ (_"Orchestrator '0cbedce2-61b8-41fc-84bf-697d31b80a10' status:'Pending'."_) .

**App Details**
Durable Functions extension version: 2.6.0
Azure Functions runtime version: 4.0.1
Programming language used: .NET (C#)

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Comienza inspeccionando la ruta de eventos externos utilizada por IDurableOrchestrationClient.RaiseEventAsync() y cómo gestiona las instancias en OrchestrationRuntimeStatus.Pending. Reproduce el timing descrito con Durable Functions extension 2.6.0 y Azure Functions runtime 4.0.1; después, verifica que un evento generado durante Pending no se retire de la cola como "No such instance" y esté disponible una vez que la orquestación alcance Running.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
azure, csharp
Área
backend, distributed-systems
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.