[Fedora-suds-list] Connection time out

Jerzy Orlowski jerzyo at genesilico.pl
Fri Nov 20 16:19:51 UTC 2009


Sorry, this one doesn't work.
And it seems that socket.setdefaulttimeout(self.options.timeout in 
http.py is not changing anything

Jerzy Orlowski

Jerzy Orlowski wrote:
> OK,it works, but if you do it by 
> socket.setdefaulttimeout(self.options.timeout) than it is very nasty 
> and error prone
>
> The proper code should look stk like:
>    def __open(self, u2request):
>        #socket.setdefaulttimeout(self.options.timeout)
>        if self.urlopener is None:
>            return u2.urlopen(u2request,self.options.timeout)
>        else:
>            return self.urlopener.open(u2request,self.options.timeout)
>
>
>
>
>
> Jeff Ortel wrote:
>> The socket timeout was added as a suds option in 0.3.7 
>> (https://fedorahosted.org/suds/wiki/Documentation#OPTIONS).  Try:
>>
>> client = Client(url, timeout=500)
>>
>>
>> On 11/20/2009 09:44 AM, Jerzy Orlowski wrote:
>>> changing the http.py file made it:
>>>
>>> def __open(self, u2request):
>>> socket.setdefaulttimeout(self.options.timeout)
>>> if self.urlopener is None:
>>> return u2.urlopen(u2request)
>>> else:
>>> return self.urlopener.open(u2request,timeout=500)
>>>
>>>
>>>
>>> Could you, please, add
>>> Client.settimout()
>>>
>>> For the the next release?
>>>
>>>
>>>
>>> Matt C wrote:
>>>> I'm not sure if this will work for you, it may be worth a shot - see
>>>> the 'missing manual' for urllib2, which shows you a way to set global
>>>> socket options:
>>>> #########################
>>>> import socket
>>>> import urllib2
>>>>
>>>> # timeout in seconds
>>>> timeout = 10
>>>> socket.setdefaulttimeout(timeout)
>>>>
>>>> # this call to urllib2.urlopen now uses the default timeout
>>>> # we have set in the socket module
>>>> req = urllib2.Request('http://www.voidspace.org.uk')
>>>> response = urllib2.urlopen(req)
>>>> ########################
>>>>
>>>> Something like this in your Suds script may help, and is worth a shot.
>>>>
>>>> Please post back if this works, and good luck!
>>>> -Matt
>>>>
>>>> On Fri, Nov 20, 2009 at 10:10 AM, Jerzy Orlowski
>>>> <jerzyo at genesilico.pl> wrote:
>>>>> Hi
>>>>>
>>>>> My service takes ~5 minutes time. When I call it, I get:
>>>>>
>>>>> Traceback (most recent call last):
>>>>> File "test_soap_global2.py", line 2151, in <module>
>>>>> result=client.service.soap_create_model(INPUT_PDB, INPUT_ALIGNMENT,
>>>>> TEMP_CHAIN_NAME, MODEL_CHAIN_NAME)
>>>>> File "build/bdist.linux-x86_64/egg/suds/client.py", line 537, in
>>>>> __call__
>>>>> File "build/bdist.linux-x86_64/egg/suds/client.py", line 597, in 
>>>>> invoke
>>>>> File "build/bdist.linux-x86_64/egg/suds/client.py", line 622, in send
>>>>> File "build/bdist.linux-x86_64/egg/suds/transport/http.py", line 
>>>>> 85, in
>>>>> send
>>>>> File "build/bdist.linux-x86_64/egg/suds/transport/http.py", line 
>>>>> 107, in
>>>>> __open
>>>>> File "/usr/lib/python2.6/urllib2.py", line 389, in open
>>>>> response = self._open(req, data)
>>>>> File "/usr/lib/python2.6/urllib2.py", line 407, in _open
>>>>> '_open', req)
>>>>> File "/usr/lib/python2.6/urllib2.py", line 367, in _call_chain
>>>>> result = func(*args)
>>>>> File "/usr/lib/python2.6/urllib2.py", line 1146, in http_open
>>>>> return self.do_open(httplib.HTTPConnection, req)
>>>>> File "/usr/lib/python2.6/urllib2.py", line 1121, in do_open
>>>>> raise URLError(err)
>>>>> urllib2.URLError: <urlopen error timed out>
>>>>>
>>>>>
>>>>> Jerzy Orlowski
>>>>>
>>>>> _______________________________________________
>>>>> fedora-suds-list mailing list
>>>>> fedora-suds-list at redhat.com
>>>>> https://www.redhat.com/mailman/listinfo/fedora-suds-list
>>>>>
>>>>
>>>>
>>>>
>>>
>>> _______________________________________________
>>> fedora-suds-list mailing list
>>> fedora-suds-list at redhat.com
>>> https://www.redhat.com/mailman/listinfo/fedora-suds-list
>>
>
> _______________________________________________
> fedora-suds-list mailing list
> fedora-suds-list at redhat.com
> https://www.redhat.com/mailman/listinfo/fedora-suds-list
>
>
>




More information about the suds mailing list