[
https://issues.apache.org/jira/browse/THRIFT-4641?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16622512#comment-16622512
]
ASF GitHub Bot commented on THRIFT-4641:
----------------------------------------
sokac opened a new pull request #1598: THRIFT-4641: Check HTTP Status Code in
TCurlClient
URL: https://github.com/apache/thrift/pull/1598
Tested and deployed on our production system. The change changes behavior
for TCurlClient when non-200 response is received. However, other languages,
such as Java and go do check for status code.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
> TCurlClient doesn't check for HTTP status code
> ----------------------------------------------
>
> Key: THRIFT-4641
> URL: https://issues.apache.org/jira/browse/THRIFT-4641
> Project: Thrift
> Issue Type: Bug
> Components: PHP - Library
> Affects Versions: 0.11.0
> Reporter: Josip Sokcevic
> Priority: Major
> Fix For: 0.12.0
>
> Attachments:
> 0001-THRIFT-4641-Check-HTTP-Status-Code-in-TCurlClient.patch
>
>
> TCurlClient doesn't check for HTTP status code. Other languages, such as Go
> and Java do check for it. This can lead to potentially wrong exception being
> thrown: TProtocolException instead of TTransportException. To be more
> precise, TCurlTransport doesn't error out and Protocol starts to parse
> response, which may lead to TProtocolException. For example, AWS ALB may
> return 502 Bad Gateway with HTML as part of payload when there's an issue
> with an upstream. In such case, a client may want to retry but it only makes
> sense if there's a transport exception.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)