69
originalScheduledTimestamp *timestamppb.Timestamp,
70
workflowTaskType enumsspb.WorkflowTaskType,
72
>
73
>
// set workflow state to running, since workflow task is scheduled
74
>
// NOTE: for zombie workflow, should not change the state
75
>
state, _ := m.ms.GetWorkflowStateStatus()
76
>
if state != enumsspb.WORKFLOW_EXECUTION_STATE_ZOMBIE {
77
>
if _, err := m.ms.UpdateWorkflowStateStatus(
78
>
enumsspb.WORKFLOW_EXECUTION_STATE_RUNNING,
79
>
enumspb.WORKFLOW_EXECUTION_STATUS_RUNNING,
80
>
); err != nil {
81
return nil, err
82
}
83
}
84
86
>
Version: version,
87
>
ScheduledEventID: scheduledEventID,
88
>
StartedEventID: common.EmptyEventID,
89
>
RequestID: emptyUUID,
90
>
WorkflowTaskTimeout: startToCloseTimeout.AsDuration(),
91
>
TaskQueue: taskQueue,
92
>
Attempt: attempt,
93
>
AttemptsSinceLastSuccess: m.ms.executionInfo.WorkflowTaskAttemptsSinceLastSuccess,
94
>
ScheduledTime: scheduledTime.AsTime(),
95
>
StartedTime: time.Time{},
96
>
OriginalScheduledTime: originalScheduledTimestamp.AsTime(),
97
>
Type: workflowTaskType,
98
>
SuggestContinueAsNew: false, // reset, will be recomputed on workflow task started
99
>
SuggestContinueAsNewReasons: nil, // reset, will be recomputed on workflow task started
100
>
HistorySizeBytes: 0, // reset, will be recomputed on workflow task started
101
>
Stamp: m.ms.GetExecutionInfo().GetWorkflowTaskStamp(),
102
>
}
103
>
104
>
m.retainWorkflowTaskBuildIdInfo(workflowTask)
105
>
m.UpdateWorkflowTask(workflowTask)
106
>
return workflowTask, nil
107
}
108