Set a longer 'upload' timeout.

parent e207afea
...@@ -30,7 +30,9 @@ import urlparse ...@@ -30,7 +30,9 @@ import urlparse
# Timeout here is about timeout to CONNECT to the server (socket initialization then server answers actual data), not to retrieve/send informations. # Timeout here is about timeout to CONNECT to the server (socket initialization then server answers actual data), not to retrieve/send informations.
# To be clear: it is NOT about uploading/downloading data, but about time to connect to the server, then time that server takes to start answering. # To be clear: it is NOT about uploading/downloading data, but about time to connect to the server, then time that server takes to start answering.
TIMEOUT = 3600 TIMEOUT = 60
# Same here. We just wait longer that, after having uploaded the file, the server digests it. It can take time.
UPLOAD_TIMEOUT = 60 * 60
class NetworkcacheClient(object): class NetworkcacheClient(object):
...@@ -147,15 +149,18 @@ class NetworkcacheClient(object): ...@@ -147,15 +149,18 @@ class NetworkcacheClient(object):
if self.shacache_scheme == 'https': if self.shacache_scheme == 'https':
shacache_connection = httplib.HTTPSConnection(self.shacache_host, shacache_connection = httplib.HTTPSConnection(self.shacache_host,
self.shacache_port, key_file=self.shacache_key_file, self.shacache_port, key_file=self.shacache_key_file,
cert_file=self.shacache_cert_file, timeout=TIMEOUT) cert_file=self.shacache_cert_file, timeout=UPLOAD_TIMEOUT)
else: else:
shacache_connection = httplib.HTTPConnection(self.shacache_host, shacache_connection = httplib.HTTPConnection(self.shacache_host,
self.shacache_port, timeout=TIMEOUT) self.shacache_port, timeout=UPLOAD_TIMEOUT)
try: try:
shacache_connection.request('POST', self.shacache_path, file_descriptor, shacache_connection.request('POST', self.shacache_path, file_descriptor,
self.shacache_header_dict) self.shacache_header_dict)
print 'uploade'
result = shacache_connection.getresponse() result = shacache_connection.getresponse()
print 'repondu'
data = result.read() data = result.read()
print 'read'
finally: finally:
shacache_connection.close() shacache_connection.close()
...@@ -189,10 +194,10 @@ class NetworkcacheClient(object): ...@@ -189,10 +194,10 @@ class NetworkcacheClient(object):
if self.shadir_scheme == 'https': if self.shadir_scheme == 'https':
shadir_connection = httplib.HTTPSConnection(self.shadir_host, shadir_connection = httplib.HTTPSConnection(self.shadir_host,
self.shadir_port, key_file=self.shadir_key_file, self.shadir_port, key_file=self.shadir_key_file,
cert_file=self.shadir_cert_file, timeout=TIMEOUT) cert_file=self.shadir_cert_file, timeout=UPLOAD_TIMEOUT)
else: else:
shadir_connection = httplib.HTTPConnection(self.shadir_host, shadir_connection = httplib.HTTPConnection(self.shadir_host,
self.shadir_port, timeout=TIMEOUT) self.shadir_port, timeout=UPLOAD_TIMEOUT)
try: try:
shadir_connection.request('PUT', '/'.join([self.shadir_path, key]), shadir_connection.request('PUT', '/'.join([self.shadir_path, key]),
json.dumps(data), self.shadir_header_dict) json.dumps(data), self.shadir_header_dict)
...@@ -224,10 +229,10 @@ class NetworkcacheClient(object): ...@@ -224,10 +229,10 @@ class NetworkcacheClient(object):
if self.shacache_scheme == 'https': if self.shacache_scheme == 'https':
shacache_connection = httplib.HTTPSConnection(self.shacache_host, shacache_connection = httplib.HTTPSConnection(self.shacache_host,
self.shacache_port, key_file = self.shacache_key_file, self.shacache_port, key_file = self.shacache_key_file,
cert_file = self.shacache_cert_file, timeout=TIMEOUT) cert_file = self.shacache_cert_file, timeout=UPLOAD_TIMEOUT)
else: else:
shacache_connection = httplib.HTTPConnection(self.shacache_host, shacache_connection = httplib.HTTPConnection(self.shacache_host,
self.shacache_port, timeout=TIMEOUT) self.shacache_port, timeout=UPLOAD_TIMEOUT)
try: try:
shacache_connection.request('POST', self.shacache_path, file_descriptor, shacache_connection.request('POST', self.shacache_path, file_descriptor,
self.shacache_header_dict) self.shacache_header_dict)
...@@ -252,10 +257,10 @@ class NetworkcacheClient(object): ...@@ -252,10 +257,10 @@ class NetworkcacheClient(object):
if self.shadir_scheme == 'https': if self.shadir_scheme == 'https':
shadir_connection = httplib.HTTPSConnection(self.shadir_host, shadir_connection = httplib.HTTPSConnection(self.shadir_host,
self.shadir_port, key_file = self.shadir_key_file, self.shadir_port, key_file = self.shadir_key_file,
cert_file = self.shadir_cert_file, timeout=TIMEOUT) cert_file = self.shadir_cert_file, timeout=UPLOAD_TIMEOUT)
else: else:
shadir_connection = httplib.HTTPConnection(self.shadir_host, shadir_connection = httplib.HTTPConnection(self.shadir_host,
self.shadir_port, timeout=TIMEOUT) self.shadir_port, timeout=UPLOAD_TIMEOUT)
try: try:
shadir_connection.request('PUT', '/'.join([self.shadir_path, key]), shadir_connection.request('PUT', '/'.join([self.shadir_path, key]),
json.dumps(data), self.shadir_header_dict) json.dumps(data), self.shadir_header_dict)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment