azure-functions-durable-extension | Durable Task Framework extension for Azure Functions | Cloud Functions library
kandi X-RAY | azure-functions-durable-extension Summary
kandi X-RAY | azure-functions-durable-extension Summary
Durable Task Framework extension for Azure Functions
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of azure-functions-durable-extension
azure-functions-durable-extension Key Features
azure-functions-durable-extension Examples and Code Snippets
Community Discussions
Trending Discussions on azure-functions-durable-extension
QUESTION
If I call IDurableOrchestrationClient.TerminateAsync
on a running orchestrator that is currently sleeping and waiting on a durable timer created through IDurableOrchestrationContext.CreateTimer
, will this result in a graceful shutdown of the entire process including the timer?
The documentation on timers has a very explicit warning regarding graceful cancellation of any timers that didn't activate in the orchestration:
Warning
Use a CancellationTokenSource (.NET) or call cancel() on the returned TimerTask (JavaScript) to cancel a durable timer if your code will not wait for it to complete. The Durable Task Framework will not change an orchestration's status to "completed" until all outstanding tasks are completed or canceled.
Will calling Terminate
respect these restrictions? The documentation on it doesn't make this clear at all.
I have a requirement where I need to "monitor" some instance for some time after it is created, and to stop monitoring it once the instance is deleted.
For now, my application raises EventGrid events on creation and deletion of entities, and I listen to those in my orchestration trigger activity: once a creation event is received, I start the orchestration that monitors that instance. Once the deletion event is received, I send an external event to the orchestrator to signal that it should stop monitoring that instance and terminate. Each creation/deletion pair is handled by its own monitor of course (they are isolated from one another, controlled by an explicit instance ID based on the entity ID).
The orchestrator logic basically fires 2 tasks and waits for the first to finish:
- A timer, based on data in the created instance. This can be minutes, to months
- A
WaitForExternalEvent
that waits until the trigger function notifies of a cancellation
If task 2 wins, I cancel the timer (as per the recommendation), and exit the function. If task 1 wins, I do the processing I need on the instance and ignore the external event.
The orchestrator itself looks something like this:
...ANSWER
Answered 2022-Mar-24 at 17:51Yes, it's safe to terminate an orchestration, even if it has pending timers outstanding (or pending activity or sub-orchestration calls, for that matter). The orchestration will always transition into the "Terminated" state. Any messages that appear for an instance after it has been terminated (including timer messages) will be silently discarded.
QUESTION
We're using a Durable Orchestrator Function that needs to make several million calls to Activity functions. We're seeing the following exception after 100,000 invocations:
Maximum amount of orchestration actions 100,000 has been reached. This value can be configured in host.json file as MaxOrchestrationActions.
However, I cannot find HOW to set this value.
In the host.json schema here, it's not specified.
I've pulled the head of the dev branch for Azure Function Durable Extension and traced through the source code. It appears that this can be set as DurableTaskOptions.MaxOrchestrationActions, but it must be set before it's passed into the DurableOrchestrationContext class.
We've taken a guess that the property in host.json might be
...ANSWER
Answered 2020-Jul-07 at 14:55You're right, the default value is 100k and you should be able to change using host.json.
Two things that I've noticed: you're not providing version number and you're not using camel case:
QUESTION
I have deployed Azure Durable Http Triggered Function app in Azure Kubernetes Service. I used Visual Studio Code to create the function app. I have followed instructions from this this article and Microsoft official documentation.
...ANSWER
Answered 2020-Oct-17 at 15:28Try adding a WEBSITE_HOSTNAME
environment variable with :
as the value, where :
refers to the address that can be used to reach your function app from outside.
This error happens when you use an API that depends on this environment variable. When running using the local core tools, this value is set to localhost:7071
automatically. When running in the Azure Functions hosted service, this environment variable is also pre-configured to be the DNS name of the function app (e.g. myfunctionapp.azurewebsites.net
. For other environments, like AKS, you'll need to add this environment variable explicitly and set it to the correct value for your deployment.
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install azure-functions-durable-extension
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page