I'm trying to help out somebody who is sitting behind a squid proxy server.
Using, from Chemistry, the python cmislib but have also tried the java implmentation.
The problem is that only small files can be uploaded/updated - 125kb seems to be OK, 256kb not although I manage to upload some slightly larger files running everything locally.
It's fairly easy to test if you've got squid installed by setting the http(s)_proxy variables.
File "/usr/local/lib/python2.7/dist-packages/cmislib/model.py", line 1185, in createDocument result = self._cmisClient.post(postUrl.encode('utf-8'), xmlDoc.toxml(encoding='utf-8'), ATOM_XML_ENTRY_TYPE) File "/usr/local/lib/python2.7/dist-packages/cmislib/model.py", line 260, in post **kwargs) File "/usr/local/lib/python2.7/dist-packages/cmislib/net.py", line 286, in post return opener.open(request) File "/usr/lib/python2.7/urllib2.py", line 400, in open response = self._open(req, data) File "/usr/lib/python2.7/urllib2.py", line 418, in _open '_open', req) File "/usr/lib/python2.7/urllib2.py", line 378, in _call_chain result = func(*args) File "/usr/lib/python2.7/urllib2.py", line 1207, in http_open return self.do_open(httplib.HTTPConnection, req) File "/usr/lib/python2.7/urllib2.py", line 1177, in do_open raise URLError(err) urllib2.URLError: <urlopen error [Errno 32] Broken pipe>
It's not an option for my colleague but in my local tests exactly the same code/file works when the http(s)_proxy variables are not set to point to the squid instance.
I haven't had much time for this as we've come up with a work around but thought I'd post the following in case it's useful
If I attach strace to the squid process and log the output to the console then larger files will work - if the output of strace is sent to /dev/null then the original behaviour comes back.
So the interaction with squid is definitely the problem but it's not clear to me why - different clients exhibit the same symptoms so a possible next step would be to try a different CMIS server and see what happens