Chore: Remove warning when calling resource (#30752)

Fixes so that the warning WARN Failed to close 
stream logger=plugins.backend err="cannot 
close a closed stream" is not logged every 
time calling a resource.
This commit is contained in:
Marcus Efraimsson 2021-02-01 16:11:13 +01:00 committed by GitHub
parent 3b7b49a4aa
commit 13ce811fab
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -262,13 +262,17 @@ func (m *manager) callResourceInternal(w http.ResponseWriter, req *http.Request,
childCtx, cancel := context.WithCancel(req.Context())
defer cancel()
stream := newCallResourceResponseStream(childCtx)
var wg sync.WaitGroup
wg.Add(1)
defer func() {
if err := stream.Close(); err != nil {
m.logger.Warn("Failed to close stream", "err", err)
}
wg.Wait()
}()
var wg sync.WaitGroup
wg.Add(1)
var flushStreamErr error
go func() {
flushStreamErr = flushStream(p, stream, w)
@ -278,11 +282,6 @@ func (m *manager) callResourceInternal(w http.ResponseWriter, req *http.Request,
if err := p.CallResource(req.Context(), crReq, stream); err != nil {
return err
}
if err := stream.Close(); err != nil {
return err
}
wg.Wait()
return flushStreamErr
})