Flows stuck in Waiting state | Concurrency control and Degree of Parallelism in a Power Automate

In case you are using Flows that triggers frequently and have steps in them your Flows to wait for a response, like Approvals.

Scenario

Let’s say you have Flows which use Approvals – These need to wait till the recipients respond to the Approval on their Emails

  1. The Flow which is waiting for an Approval response will be in Running state

  2. And if you open them, you’ll see this –

  3. And that makes the other Flow runs after that “Waiting” to even start.

  4. And that’s because the Flow trigger has something called as Concurrency turned on and has a certain Degree of Parallelism set which we’ll see in the section below.

Concurrency Control and Degree of Parallelism

The reason the other Flow runs were waiting because the Flow Trigger had the Concurrency control turned ON and the Degree of Parallelism set to a certain number between 1 to 100

  1. Open settings on the Flow trigger.

  2. You’ll find that the Concurrency is turn ON. And the Degree of Parallelism is set to a certain number.
    The number set is the count of Flow Runs that are allowed to Run at once and others will be waiting.
    In this case, only 1 Flow Run was allowed. Hence, the others were waiting.


  3. You can now try to turn this off.

  4. Now, when you try to turn this OFF and then save the Flow, you’ll see this error message –
    Flow save failed with code ‘CannotDisableTriggerConcurrency’ and message ‘The trigger ‘When_a_row_is_added,_modified_or_deleted’ of current version of workflow ‘fd33f44a-d6ad-4f06-bbf8-a693b316fa31′ has concurrency runtime configuration specified. Trigger concurrency runtime configuration cannot be removed once specified.’

  5. Hence, this has to be taken care at the beginning when you start designing your Flow. Or, you can use Undo to revert till the step when you turned this ON.

  6. When Concurrency control is turned off, Flow runs can continue to run in parallel without limitations or dependency on other Flow runs.

Hope this was useful!

Here are some Power Automate posts you want to check out –

  1. Blocking Attachment Extensions in Dynamics 365 CRM
  2. Upgrade Dataverse for Teams Environment to Dataverse Environment
  3. Showing Sandbox or Non Production Apps in Power App mobile app
  4. Create a Power Apps Per User Plan Trial | Dataverse environment
  5. Install On-Premise Gateway from Power Automate or Power Apps | Power Platform
  6. Co-presence in Power Automate | Multiple users working on a Flow
  7. Search Rows (preview) Action in Dataverse connector in a Flow | Power Automate
  8. Suppress Workflow Header Information while sending back HTTP Response in a Flow | Power Automate
  9. Call a Flow from Canvas Power App and get back response | Power Platform\
  10. FetchXML Aggregation in a Flow using CDS (Current Environment) connector | Power Automate
  11. Parsing Outputs of a List Rows action using Parse JSON in a Flow | Common Data Service (CE) connector
  12. Asynchronous HTTP Response from a Flow | Power Automate
  13. Validate JSON Schema for HTTP Request trigger in a Flow and send Response | Power Automate
  14. Converting JSON to XML and XML to JSON in a Flow | Power Automate

Thank you!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.