diff --git a/api/client.go b/api/client.go index 97a81d253..b2f4638ab 100644 --- a/api/client.go +++ b/api/client.go @@ -678,7 +678,7 @@ func (c *Client) NewRequest(ctx context.Context, method, requestPath string, bod req.Header.Set("authorization", "Bearer "+token) req.Header.Set("content-type", "application/json") if ctx != nil { - req = req.WithContext(ctx) + req = req.Clone(ctx) } ret := &retryablehttp.Request{ @@ -735,7 +735,7 @@ func (c *Client) Do(r *retryablehttp.Request, opt ...Option) (*Response, error) // this as it will make reading the response body impossible _ = cancel } - r.Request = r.Request.WithContext(ctx) + r.Request = r.Request.Clone(ctx) if backoff == nil { backoff = retryablehttp.LinearJitterBackoff diff --git a/internal/servers/common/handler.go b/internal/servers/common/handler.go index 93b40e99a..6cf7df10a 100644 --- a/internal/servers/common/handler.go +++ b/internal/servers/common/handler.go @@ -152,7 +152,7 @@ func WrapWithEventsHandler(h http.Handler, e *event.Eventer, kms *kms.Kms, liste } // Set the context back on the request - r = r.WithContext(ctx) + r = r.Clone(ctx) { method := r.Method diff --git a/internal/servers/controller/handler.go b/internal/servers/controller/handler.go index 7d75d3e4c..2f13dbac9 100644 --- a/internal/servers/controller/handler.go +++ b/internal/servers/controller/handler.go @@ -352,7 +352,7 @@ func wrapHandlerWithCommonFuncs(h http.Handler, c *Controller, props HandlerProp r.Header.Set("Grpc-Metadata-"+requestInfoMdKey, base58.FastBase58Encoding(marshalledRequestInfo)) // Set the context back on the request - r = r.WithContext(ctx) + r = r.Clone(ctx) h.ServeHTTP(w, r) }) }