From f2525777b45dced02c1ca1f22608b5dcb6892a1f Mon Sep 17 00:00:00 2001 From: rubyist Date: Tue, 16 Jun 2015 18:34:41 -0400 Subject: [PATCH] Build object outside of lock, pull URL from response --- lfs/http.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lfs/http.go b/lfs/http.go index fee5e3ba..c3085c42 100644 --- a/lfs/http.go +++ b/lfs/http.go @@ -29,7 +29,6 @@ type transferStats struct { type transfer struct { requestStats *transferStats responseStats *transferStats - url string } var ( @@ -90,8 +89,9 @@ func (c *HttpClient) Do(req *http.Request) (*http.Response, error) { // Response body size cannot be figured until it is read. Do not rely on a Content-Length // header because it may not exist or be -1 in the case of chunked responses. resstats := &transferStats{HeaderSize: resHeaderSize, Start: start} + t := &transfer{requestStats: reqstats, responseStats: resstats} transfersLock.Lock() - transfers[res] = &transfer{requestStats: reqstats, responseStats: resstats, url: req.URL.String()} + transfers[res] = t transfersLock.Unlock() } @@ -274,7 +274,7 @@ func LogHttpStats() { stats.responseStats.BodySize, stats.responseStats.Stop.Sub(stats.responseStats.Start).Nanoseconds(), response.StatusCode, - stats.url) + response.Request.URL) } }