762
763
// Add the task queue to the local state.
765
d.VersionState.TaskQueueFamilies = make(map[string]*deploymentspb.VersionLocalState_TaskQueueFamilyData)
766
}
768
d.VersionState.TaskQueueFamilies[args.TaskQueueName] = &deploymentspb.VersionLocalState_TaskQueueFamilyData{}
769
}
770
>
if d.VersionState.TaskQueueFamilies[args.TaskQueueName].TaskQueues == nil {
version_workflow.go
771
d.VersionState.TaskQueueFamilies[args.TaskQueueName].TaskQueues = make(map[int32]*deploymentspb.TaskQueueVersionData)
772
}
773
774
>
if _, ok := d.VersionState.TaskQueueFamilies[args.TaskQueueName].TaskQueues[int32(args.TaskQueueType)]; ok {
version_workflow.go
775
// already registered, returning success so it is idempotent
776
return nil
777
}
778
779
>
d.VersionState.TaskQueueFamilies[args.TaskQueueName].TaskQueues[int32(args.TaskQueueType)] = &deploymentspb.TaskQueueVersionData{}
version_workflow.go
780
>
781
>
// Transition from CREATED to INACTIVE once a poller registers a task queue.
782
>
if d.VersionState.Status == enumspb.WORKER_DEPLOYMENT_VERSION_STATUS_CREATED {
783
d.VersionState.Status = enumspb.WORKER_DEPLOYMENT_VERSION_STATUS_INACTIVE
784
// deployment workflow updates the status in version summary to INACTIVE
785
}
786
788
// Still need to check RoutingConfig not being nil because of edge cases during enabling dynamic config.
789
// i.e. the deployment workflow might run old version and not send the routing config.
790
d.syncRegisteredTaskQueueAsync(ctx, args)
792
err = d.syncRegisteredTaskQueueOld(ctx, args)
793
}
795
}
796