Skip to content

Commit 03917b1

Browse files
committed
fix conflicts
1 parent ef19f17 commit 03917b1

14 files changed

Lines changed: 47 additions & 16 deletions

service/frontend/workflow_handler.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -693,7 +693,6 @@ func (wh *WorkflowHandler) validateTimeSkippingConfig(
693693
timeSkippingConfig *workflowpb.TimeSkippingConfig,
694694
namespaceName namespace.Name,
695695
) error {
696-
697696
if timeSkippingConfig == nil {
698697
return nil
699698
}
@@ -722,7 +721,7 @@ func (wh *WorkflowHandler) validateTimeSkippingConfig(
722721
namespace.MinTimeSkippingDuration,
723722
)
724723
}
725-
// todo: will need to check current virtual time in updateOptions scenario
724+
// todo: need to adapt the timeSource after time-skipping timeSource is implemented
726725
case *workflowpb.TimeSkippingConfig_MaxTargetTime:
727726
if bound.MaxTargetTime.AsTime().Before(wh.namespaceHandler.timeSource.Now().Add(namespace.MinTimeSkippingDuration)) {
728727
return serviceerror.NewUnimplementedf(
@@ -6876,6 +6875,9 @@ func (wh *WorkflowHandler) UpdateWorkflowExecutionOptions(
68766875
if err := priorities.Validate(opts.GetPriority()); err != nil {
68776876
return nil, err
68786877
}
6878+
if err := wh.validateTimeSkippingConfig(opts.GetTimeSkippingConfig(), namespace.Name(request.GetNamespace())); err != nil {
6879+
return nil, err
6880+
}
68796881

68806882
namespaceID, err := wh.namespaceRegistry.GetNamespaceID(namespace.Name(request.GetNamespace()))
68816883
if err != nil {

service/history/api/startworkflow/api.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -691,6 +691,7 @@ func (s *Starter) handleUseExistingWorkflowOnConflictOptions(
691691
links,
692692
"", // identity
693693
nil, // priority
694+
nil, // timeSkippingConfig
694695
)
695696
return api.UpdateWorkflowWithoutWorkflowTask, err
696697
},

service/history/api/updateworkflowoptions/api.go

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ func MergeAndApply(
151151
if mergedOpts.GetVersioningOverride() == nil {
152152
unsetOverride = true
153153
}
154-
_, err = ms.AddWorkflowExecutionOptionsUpdatedEvent(mergedOpts.GetVersioningOverride(), unsetOverride, "", nil, nil, identity, mergedOpts.GetPriority())
154+
_, err = ms.AddWorkflowExecutionOptionsUpdatedEvent(mergedOpts.GetVersioningOverride(), unsetOverride, "", nil, nil, identity, mergedOpts.GetPriority(), mergedOpts.GetTimeSkippingConfig())
155155
if err != nil {
156156
return nil, hasChanges, err
157157
}
@@ -172,6 +172,9 @@ func getOptionsFromMutableState(ms historyi.MutableState) *workflowpb.WorkflowEx
172172
opts.Priority = cloned
173173
}
174174
}
175+
if timeSkippingInfo := ms.GetExecutionInfo().GetTimeSkippingInfo(); timeSkippingInfo != nil {
176+
opts.TimeSkippingConfig = timeSkippingInfo.GetConfig()
177+
}
175178
return opts
176179
}
177180

@@ -230,5 +233,13 @@ func mergeWorkflowExecutionOptions(
230233
mergeInto.Priority.FairnessWeight = mergeFrom.Priority.GetFairnessWeight()
231234
}
232235

236+
// ==== Time Skipping Config
237+
// nil means "no change" — only update if the caller provided an explicit value.
238+
if _, ok := updateFields["timeSkippingConfig"]; ok {
239+
if mergeFrom.GetTimeSkippingConfig() != nil {
240+
mergeInto.TimeSkippingConfig = mergeFrom.GetTimeSkippingConfig()
241+
}
242+
}
243+
233244
return mergeInto, nil
234245
}

service/history/api/updateworkflowoptions/api_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -253,7 +253,7 @@ func (s *updateWorkflowOptionsSuite) TestInvoke_Success() {
253253
).Return(&matchingservice.CheckTaskQueueVersionMembershipResponse{
254254
IsMember: true,
255255
}, nil)
256-
s.currentMutableState.EXPECT().AddWorkflowExecutionOptionsUpdatedEvent(expectedOverrideOptions.VersioningOverride, false, "", nil, nil, "", expectedOverrideOptions.Priority).Return(&historypb.HistoryEvent{}, nil)
256+
s.currentMutableState.EXPECT().AddWorkflowExecutionOptionsUpdatedEvent(expectedOverrideOptions.VersioningOverride, false, "", nil, nil, "", expectedOverrideOptions.Priority, expectedOverrideOptions.TimeSkippingConfig).Return(&historypb.HistoryEvent{}, nil)
257257
s.currentContext.EXPECT().UpdateWorkflowExecutionAsActive(gomock.Any(), s.shardContext).Return(nil)
258258

259259
updateReq := &historyservice.UpdateWorkflowExecutionOptionsRequest{

service/history/historybuilder/event_factory.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -404,6 +404,7 @@ func (b *EventFactory) CreateWorkflowExecutionOptionsUpdatedEvent(
404404
links []*commonpb.Link,
405405
identity string,
406406
priority *commonpb.Priority,
407+
timeSkippingConfig *workflowpb.TimeSkippingConfig,
407408
) *historypb.HistoryEvent {
408409
event := b.createHistoryEvent(enumspb.EVENT_TYPE_WORKFLOW_EXECUTION_OPTIONS_UPDATED, b.timeSource.Now())
409410
event.Attributes = &historypb.HistoryEvent_WorkflowExecutionOptionsUpdatedEventAttributes{
@@ -414,6 +415,7 @@ func (b *EventFactory) CreateWorkflowExecutionOptionsUpdatedEvent(
414415
AttachedCompletionCallbacks: attachCompletionCallbacks,
415416
Identity: identity,
416417
Priority: priority,
418+
TimeSkippingConfig: timeSkippingConfig,
417419
},
418420
}
419421
event.Links = links

service/history/historybuilder/history_builder.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -458,6 +458,7 @@ func (b *HistoryBuilder) AddWorkflowExecutionOptionsUpdatedEvent(
458458
links []*commonpb.Link,
459459
identity string,
460460
priority *commonpb.Priority,
461+
timeSkippingConfig *workflowpb.TimeSkippingConfig,
461462
) *historypb.HistoryEvent {
462463
event := b.EventFactory.CreateWorkflowExecutionOptionsUpdatedEvent(
463464
worker_versioning.ConvertOverrideToV32(versioningOverride),
@@ -467,6 +468,7 @@ func (b *HistoryBuilder) AddWorkflowExecutionOptionsUpdatedEvent(
467468
links,
468469
identity,
469470
priority,
471+
timeSkippingConfig,
470472
)
471473
event, _ = b.EventStore.add(event)
472474
return event

service/history/historybuilder/history_builder_categorization_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ func TestHistoryBuilder_FlushBufferToCurrentBatch(t *testing.T) {
208208
t.Errorf("expected 1 event in memBufferBatch got %d", len(hb.memBufferBatch))
209209
}
210210
// add another event to memBufferBatch
211-
hb.AddWorkflowExecutionOptionsUpdatedEvent(nil, false, "request-id-1", nil, nil, "", nil)
211+
hb.AddWorkflowExecutionOptionsUpdatedEvent(nil, false, "request-id-1", nil, nil, "", nil, nil)
212212
if len(hb.memBufferBatch) != 2 {
213213
t.Errorf("expected 2 event in memBufferBatch got %d", len(hb.memBufferBatch))
214214
}

service/history/interfaces/mutable_state.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ type (
123123
links []*commonpb.Link,
124124
identity string,
125125
priority *commonpb.Priority,
126+
timeSkippingConfig *workflowpb.TimeSkippingConfig,
126127
) (*historypb.HistoryEvent, error)
127128
AddWorkflowExecutionUpdateAcceptedEvent(protocolInstanceID string, acceptedRequestMessageId string, acceptedRequestSequencingEventId int64, acceptedRequest *updatepb.Request) (*historypb.HistoryEvent, error)
128129
AddWorkflowExecutionUpdateCompletedEvent(acceptedEventID int64, updResp *updatepb.Response) (*historypb.HistoryEvent, error)

service/history/interfaces/mutable_state_mock.go

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

service/history/ndc/events_reapplier_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,7 @@ func (s *nDCEventReapplicationSuite) TestReapplyEvents_AppliedEvent_WorkflowExec
113113
event.Links,
114114
attr.GetIdentity(),
115115
attr.GetPriority(),
116+
attr.GetTimeSkippingConfig(),
116117
).Return(event, nil)
117118
msCurrent.EXPECT().HSM().Return(s.hsmNode).AnyTimes()
118119
msCurrent.EXPECT().IsWorkflowPendingOnWorkflowTaskBackoff().Return(true)

0 commit comments

Comments
 (0)