I have an odd race condition occasionally occurring in my code (hard to reproduce in non-production environment) but it might be hinting at the fact that `
http.Client.Do` might be reading the `http.Request.Body` *after* it returns. Is this possible? I am re-using the same request body throughout requests. I've tried to dig into the net/http code but can't really figure it out. Looking simply at `
http.Client.do`, it seems like the request body is always closed before each return (except the sentinel error from CheckRedirect, which we're not using).