
Hey, I'm getting the following error in my logs (lots and lots), but only after the server has been running for some time, I'm not sure what the cause is or what I can do to remedy it. This is what I see in the logs: 2012-12-20 17:07:17+0000 [HTTP11ClientProtocol,client] Unhandled Error Traceback (most recent call last): Failure: twisted.web._newclient.RequestTransmissionFailed: [<twisted.python.failure.Failure <class 'twisted.internet.error.ConnectionDone'>>] 2012-12-20 17:07:17+0000 [HTTP11ClientProtocol,client] Unexpected exception from twisted.web.client.FileBodyProducer.stopProducing Traceback (most recent call last): File "/usr/local/lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/internet/endpoints.py", line 99, in connectionLost return self._wrappedProtocol.connectionLost(reason) File "/usr/local/lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/web/_newclient.py", line 859, in dispatcher return func(*args, **kwargs) File "/usr/local/lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/web/_newclient.py", line 1458, in _connectionLost_TRANSMITTING self._currentRequest.stopWriting() File "/usr/local/lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/web/_newclient.py", line 760, in stopWriting _callAppFunction(self.bodyProducer.stopProducing) --- <exception caught here> --- File "/usr/local/lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/web/_newclient.py", line 191, in _callAppFunction function() File "/usr/local/lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/web/client.py", line 760, in stopProducing self._task.stop() File "/usr/local/lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/internet/task.py", line 459, in stop self._checkFinish() File "/usr/local/lib/python2.7/site-packages/Twisted-12.2.0-py2.7-linux-x86_64.egg/twisted/internet/task.py", line 469, in _checkFinish raise self._completionState twisted.internet.task.TaskStopped: Just loads of those, they always seem to come through in pairs (the first twisted.internet.error.ConnectionDone, and then the twisted.internet.task.TaskStopped as above) I'm just doing PUT requests with twisted.web.client.Agent and using a twisted.web.client.FileBodyProducer to provide the content. I'm doing the PUT while I still have the request from a render_GET, so I thought maybe it's caused if the user disconnects while I'm doing the PUT? The idea is I redirect them to the file I PUT with request.redirect, which seems to work fine (until I get this error and it doesn't) The reason I do a PUT and redirect, instead of just writing back to the request is that I check if the file is in a cache first, I then only PUT if it's not there- then redirect afterwards. Any clues or ideas of what is happening would be hugely helpful thanks!! Paul