You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Jens Geyer (JIRA)" <ji...@apache.org> on 2016/07/15 21:37:20 UTC

[jira] [Updated] (THRIFT-3851) Golang thrift continually adds the x/thrift content type

     [ https://issues.apache.org/jira/browse/THRIFT-3851?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jens Geyer updated THRIFT-3851:
-------------------------------
    Assignee: Connor Gorman

> Golang thrift continually adds the x/thrift content type 
> ---------------------------------------------------------
>
>                 Key: THRIFT-3851
>                 URL: https://issues.apache.org/jira/browse/THRIFT-3851
>             Project: Thrift
>          Issue Type: Bug
>          Components: Go - Library
>            Reporter: Connor Gorman
>            Assignee: Connor Gorman
>
> {code}
> func (p *THttpClient) Flush() error {
> 	// Close any previous response body to avoid leaking connections.
> 	p.closeResponse()
> 	req, err := http.NewRequest("POST", p.url.String(), p.requestBuffer)
> 	if err != nil {
> 		return NewTTransportExceptionFromError(err)
> 	}
> 	p.header.Add("Content-Type", "application/x-thrift")
> 	req.Header = p.header
> 	response, err := p.client.Do(req)
> 	if err != nil {
> 		return NewTTransportExceptionFromError(err)
> 	}
> 	if response.StatusCode != http.StatusOK {
> 		// Close the response to avoid leaking file descriptors. closeResponse does
> 		// more than just call Close(), so temporarily assign it and reuse the logic.
> 		p.response = response
> 		p.closeResponse()
> 		// TODO(pomack) log bad response
> 		return NewTTransportException(UNKNOWN_TRANSPORT_EXCEPTION, "HTTP Response code: "+strconv.Itoa(response.StatusCode))
> 	}
> 	p.response = response
> 	return nil
> }
> {code}
> {code} 	p.header.Add("Content-Type", "application/x-thrift") {code}
> This adds the content-type to the httpClient which is then assigned to every request. This causes the header to get larger and larger causing some servers to reject requests due to header size (e.g. Apache Aurora)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)