An orchestration must pause for a human approval that may take days. Which TWO statements are correct?
- A Use WaitForExternalEvent; the orchestration is dehydrated while waiting and costs no compute (correct answer)
- B Pair the wait with a durable timer to enforce an approval deadline (correct answer)
- C Use Thread.Sleep inside the orchestrator
- D The orchestrator may call DateTime.Now to check the deadline
- E Consumption plan functions cannot exceed 10 minutes, so this is impossible
Shortcut: WaitForExternalEvent unloads the orchestration until RaiseEventAsync arrives, so a multi-day wait costs nothing. A durable timer raced against the event enforces a timeout. Now break replay determinism, and the 10-minute cap applies to a single activity execution, not to the orchestration's wall-clock lifetime.
WaitForExternalEvent unloads the orchestration until RaiseEventAsync arrives, so a multi-day wait costs nothing. A durable timer raced against the event enforces a timeout. Blocking sleeps and DateTime.Now break replay determinism, and the 10-minute cap applies to a single activity execution, not to the orchestration's wall-clock lifetime.