Wakeup issue ?
- Lingua principale
- C#
- Stelle
- 1.7k
- Fork
- 335
- Merge medio
- 2g 23h
- PR unite (30g)
- 6
Descrizione
Hello,
On our team we are using durable task framework to process the launch of different powershell scripts.
We are facing an issue we are not able to understand. Our worker is running 24/7 waiting for commands to be sent, be sometimes, after a long period without any activity, it gets lost.
Any command sent to the worker running durable task framework is lost and we get no reaction from the worker. We need to restart it and all the commands sent while it was in this state are lost.
Are we doing something wrong ?
Here is the part that send the command from the API :
```
var instance = await _workFlowManager.GetClient().CreateOrchestrationInstanceAsync("PowerShellOrchestration",
"V1",
domainEvent.Operation.Id.ToString(),
orchestratorInput);
OrchestrationState taskResult = await _workFlowManager.GetClient().WaitForOrchestrationAsync(instance, TimeSpan.FromSeconds(5), CancellationToken.None);
```
And here is the StartAsync method code for the worker :
```
IOrchestrationServiceInstanceStore instanceStore = new AzureTableInstanceStore(taskHubName, storageConnectionString);
var orchestrationServiceAndClient = new ServiceBusOrchestrationService(serviceBusConnectionString, taskHubName, instanceStore, null, null);
await orchestrationServiceAndClient.CreateIfNotExistsAsync();
_taskHub = new TaskHubWorker(orchestrationServiceAndClient);
_taskHub.AddTaskOrchestrations(new NameValueObjectCreator("PowerShellOrchestration",
"V1",
typeof(CreateOperationOrchestration)));
_taskHub.AddTaskActivities(new ObjectCreator[]
{
new WorkerObjectCreator(typeof(ChangeOperationStatusActivity), _mediatr),
new WorkerObjectCreator(typeof(LaunchPowerShellActivity), _mediatr),
});
await _taskHub.StartAsync();
```
Thank's for your help
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Iniziate esaminando le chiamate CreateOrchestrationInstanceAsync e WaitForOrchestrationAsync insieme alla configurazione StartAsync del worker, quindi riproducete il comportamento del worker dopo un lungo periodo di inattività. Confrontate la consegna dei comandi prima e dopo il fallimento e documentate una causa confermata, la risoluzione e i passaggi di test o riproduzione che dimostrino che i comandi non vengono più persi.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- azure, csharp, powershell
- Ambito
- backend, cloud, distributed-systems
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Da chiarire
- Idoneità per principianti
- 25/100