Solution for Long-Running Transactional Dataverse Operations
A company plans to create an order processing app. When orders are created, the app will perform complex business logic and integrate with several external systems. Orders that have a large number of line items may take up to six minutes to complete. Processing for each order must be completed in one operation to avoid leaving records in an incomplete state. You need to recommend a solution for the company. What should you recommend?
Community Votes
60% of anonymous learners picked answer C. Votes are pick records left by other test-takers — they are not the verified answer.
Community Insight
The question tests overcoming the Dataverse 2-minute execution timeout while maintaining transactional integrity, where the common trap is choosing a plug-in or workflow which will time out.
When a Dataverse operation exceeds the 2-minute plug-in and workflow timeout and requires transactional integrity, an Azure Function triggered by a webhook is the recommended solution. This page establishes that using a webhook with an Azure Function allows long-running processes while maintaining atomicity via Web API batch operations.
Choosing an asynchronous plug-in (D) or real-time workflow (B) because they seem transactional, ignoring their strict 2-minute execution timeout limit.
Community Discussion (42 comments)
Comments & Corrections
No comments yet — spotted an error or have a note? Share it below.
Expert Analysis
Why the Answer Is Correct
Option C is correct because Dataverse plug-ins and workflows are strictly limited to a two-minute execution timeout, making them incapable of handling a process that takes up to six minutes. By using a webhook to trigger an Azure Function, the process can run for the required duration externally. To satisfy the requirement of avoiding incomplete records, the Azure Function can use the Dataverse Web API to execute batch operations within a changeset, which acts as a single atomic transaction.Why the Other Options Are Wrong
Options A, B, and D are all incorrect because they rely on the Dataverse execution pipeline, which enforces a hard two-minute timeout limit for both synchronous and asynchronous executions. A real-time workflow (B) and an asynchronous plug-in (D) will fail and roll back or terminate if they exceed 120 seconds. An asynchronous workflow (A) also shares this timeout constraint and cannot run for six minutes.Community Comment Notes
Community members correctly pointed out that plug-ins and workflows have a 2-minute timeout, making an Azure Function the only viable choice for long-running operations. As BunkMoreland noted, "Custom actions have a 2 min timeout. This can be implemented using webhook and Azure function where the Azure function uses batch operations". Another user highlighted the transactional aspect, acknowledging that while webhooks don't inherently provide rollback, "it is coded to do so" using batch operations.Official Reference
Exam Strategy
For long-running Dataverse operations exceeding two minutes, immediately eliminate any plug-in or workflow option due to their hard timeout limits. Look for external compute options like Azure Functions combined with Web API batch requests to achieve transactional integrity.
Related Analysis
Practice All PL-400 Questions
Access 85 questions with complete answers and detailed explanations.
View Full PL-400 Practice Test →