You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2014/12/17 01:39:13 UTC
[jira] [Commented] (THRIFT-2900) Python THttpClient does not reset
socket timeout on exception
[ https://issues.apache.org/jira/browse/THRIFT-2900?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14249220#comment-14249220 ]
ASF GitHub Bot commented on THRIFT-2900:
----------------------------------------
GitHub user sectioneight opened a pull request:
https://github.com/apache/thrift/pull/322
THRIFT-2900 Wrap Python THttpClient withTimeout in a try/finally
Otherwise the original value of the socket timeout is not restored
properly.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/sectioneight/thrift THRIFT-2900
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/thrift/pull/322.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #322
----
commit a8ee0b14e943a1faf32bd20378a0784175ba6a00
Author: Aiden Scandella <ai...@uber.com>
Date: 2014-12-17T00:37:06Z
Wrap THttpClient withTimeout in a try/finally
Otherwise the original value of the socket timeout is not restored
properly.
----
> Python THttpClient does not reset socket timeout on exception
> -------------------------------------------------------------
>
> Key: THRIFT-2900
> URL: https://issues.apache.org/jira/browse/THRIFT-2900
> Project: Thrift
> Issue Type: Bug
> Components: Python - Library
> Affects Versions: 0.9.2
> Reporter: Aiden Scandella
>
> https://git-wip-us.apache.org/repos/asf?p=thrift.git;a=blob;f=lib/py/src/transport/THttpClient.py;h=ea80a1ae875865a297a7b14dad15757e3933284f;hb=HEAD#l106
> 102 def __withTimeout(f):
> 103 def _f(*args, **kwargs):
> 104 orig_timeout = socket.getdefaulttimeout()
> 105 socket.setdefaulttimeout(args[0].__timeout)
> 106 result = f(*args, **kwargs)
> 107 socket.setdefaulttimeout(orig_timeout)
> 108 return result
> 109 return _f
> if {{f}} raises, the default timeout is not reset. Should be wrapped in a {{try}}/{{finally}}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)