69
subqueue subqueueIndex,
70
taskInfo *persistencespb.TaskInfo,
72
>
select {
73
case <-w.backlogMgr.tqCtx.Done():
74
return errShutdown
76
// noop
77
}
78
80
>
ch := make(chan error, 1)
81
>
req := &writeTaskRequest{
82
>
taskInfo: taskInfo,
83
>
responseCh: ch,
84
>
subqueue: subqueue,
85
>
}
86
>
87
>
select {
88
>
case w.appendCh <- req:
89
>
select {
90
>
case err := <-ch:
91
>
metrics.TaskWriteLatencyPerTaskQueue.With(w.backlogMgr.metricsHandler).Record(time.Since(startTime))
92
>
return err
93
case <-w.backlogMgr.tqCtx.Done():
94
// if we are shutting down, this request will never make