diff --git a/lib/go/thrift/http_client.go b/lib/go/thrift/http_client.go
index 0f6e704..bf0ed62 100644
--- a/lib/go/thrift/http_client.go
+++ b/lib/go/thrift/http_client.go
@@ -129,17 +129,22 @@
 	return p.response != nil || p.requestBuffer != nil
 }
 
-func (p *THttpClient) Close() error {
+func (p *THttpClient) closeResponse() error {
+	var err error
 	if p.response != nil && p.response.Body != nil {
-		err := p.response.Body.Close()
-		p.response = nil
-		return err
+		err = p.response.Body.Close()
 	}
+
+	p.response = nil
+	return err
+}
+
+func (p *THttpClient) Close() error {
 	if p.requestBuffer != nil {
 		p.requestBuffer.Reset()
 		p.requestBuffer = nil
 	}
-	return nil
+	return p.closeResponse()
 }
 
 func (p *THttpClient) Read(buf []byte) (int, error) {
@@ -171,6 +176,9 @@
 }
 
 func (p *THttpClient) Flush() error {
+	// Close any previous response body to avoid leaking connections.
+	p.closeResponse()
+
 	client := &http.Client{}
 	req, err := http.NewRequest("POST", p.url.String(), p.requestBuffer)
 	if err != nil {
