curl-and-python
socket_action fails because of unhandled return value
Date: Sun, 22 Nov 2009 21:56:20 +0100
Hi,
I'm trying to use the multi interface together with epoll to implement a simple HTTP client.
Most of the time it works really well but every once in a while i get the following error:
Traceback (most recent call last):
File "/home/user/tornado/ioloop.py", line 238, in _run_callback
callback()
File "/home/user/tornado/httpclient2.py", line 148, in _handle_timeout
pycurl.SOCKET_TIMEOUT, 0)
error: (-1, 'multi_socket_action failed')
To me it looks like multi_socket_action gets a CURLM_CALL_MULTI_PERFORM return value which it can't handle. (pycurl will raise an error if the return value is anything but CURLM_OK)
The libcurl docs contain the following phrase:
"In modern libcurls, CURLM_CALL_MULTI_PERFORM or CURLM_CALL_MULTI_SOKCET should not be returned and no application needs to care about them."
What does modern refer to, is 7.18.2 considered modern?
If so, what else might cause multi_socket_action to return CURLM_CALL_MULTI_PERFORM)?
BR,
Jacob
_______________________________________________
http://cool.haxx.se/cgi-bin/mailman/listinfo/curl-and-python
Received on 2009-11-22