I’m experiencing some unexpected behaviour with a workflow that has been started with a cron schedule via SignalWithStartWorkflow.
Steps:
SignalWithStartWorkflow: everything is good, the workflow has a First Workflow Task Backoff and a signal to process later
SignalWorkflow: everything is good, the workflow is still waiting and now has 2 signals to process later
SignalWithStartWorkflow: everything is bad. The workflow started executing when I would have expected a third signal to be queued for processing later.
Hi, whats the server version you are using?
Given the firstWorkflowTaskBackOff of 7 minutes I’d expect the first workflow task to have been scheduled by server to be around 15:42. Can you share the full json workflow history please?
After looking at this more I think this is expected but bit hidden feature of SignalWithStart, opened issue here.
On step 3 when you call SignalWithStart again server will schedule a workflow task immediately after that and will ignore the timer for FirstWorkflowTaskBackoff.
So best after step 1 to use SignalWorkflow in this case and not SignalWithStart.