SignalWithStartWorkflow + Cron: Expected Behaviour?

Hi,

I’m experiencing some unexpected behaviour with a workflow that has been started with a cron schedule via SignalWithStartWorkflow.

Steps:

  1. SignalWithStartWorkflow: everything is good, the workflow has a First Workflow Task Backoff and a signal to process later
  2. SignalWorkflow: everything is good, the workflow is still waiting and now has 2 signals to process later
  3. SignalWithStartWorkflow: everything is bad. The workflow started executing when I would have expected a third signal to be queued for processing later.

Thoughts? Is this expected behaviour or a bug?


Note that the workflow doesn’t wait 7 minutes before a workflow task is scheduled.

Albert

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.