@@ -264,21 +264,27 @@ ProcessRetryLoop:
264
264
context , release , _ := t .cache .getOrCreateWorkflowExecution (domainID , execution )
265
265
var mb * mutableStateBuilder
266
266
mb , err = context .loadWorkflowExecution ()
267
+ timeout := int32 (0 )
267
268
if err == nil {
268
269
if ai , found := mb .GetActivityInfo (task .ScheduleID ); found {
269
- err = t .matchingClient .AddActivityTask (nil , & m.AddActivityTaskRequest {
270
- DomainUUID : common .StringPtr (targetDomainID ),
271
- SourceDomainUUID : common .StringPtr (domainID ),
272
- Execution : & execution ,
273
- TaskList : taskList ,
274
- ScheduleId : & task .ScheduleID ,
275
- ScheduleToStartTimeoutSeconds : common .Int32Ptr (ai .ScheduleToStartTimeout ),
276
- })
270
+ timeout = ai .ScheduleToStartTimeout
277
271
} else {
278
272
logging .LogDuplicateTransferTaskEvent (t .logger , persistence .TransferTaskTypeActivityTask , task .TaskID , task .ScheduleID )
279
273
}
280
274
}
281
275
release ()
276
+
277
+ if err == nil && timeout != 0 {
278
+ err = t .matchingClient .AddActivityTask (nil , & m.AddActivityTaskRequest {
279
+ DomainUUID : common .StringPtr (targetDomainID ),
280
+ SourceDomainUUID : common .StringPtr (domainID ),
281
+ Execution : & execution ,
282
+ TaskList : taskList ,
283
+ ScheduleId : & task .ScheduleID ,
284
+ ScheduleToStartTimeoutSeconds : common .Int32Ptr (timeout ),
285
+ })
286
+ }
287
+
282
288
}
283
289
case persistence .TransferTaskTypeDecisionTask :
284
290
{
0 commit comments