uskudnik / amazon-glacier-cmd-interface

Command line interface for Amazon Glacier
MIT License
375 stars 103 forks source link

socket.gaierror: [Errno 8] nodename nor servname provided, or not known #106

Open echamberlain opened 11 years ago

echamberlain commented 11 years ago

Using the latest master branch, uploads fail part way through with the following error:

Traceback (most recent call last):e 227.20 KB/s, average 158.70 KB/s, eta 15:40:11.                                                                                                                 
  File "/usr/local/bin/glacier-cmd", line 8, in <module>
    load_entry_point('glacier==0.2dev', 'console_scripts', 'glacier-cmd')()
  File "/Library/Python/2.7/site-packages/glacier-0.2dev-py2.7.egg/glacier/glacier.py", line 751, in main
    args.func(args)
  File "/Library/Python/2.7/site-packages/glacier-0.2dev-py2.7.egg/glacier/glacier.py", line 147, in wrapper
    return fn(*args, **kwargs)
  File "/Library/Python/2.7/site-packages/glacier-0.2dev-py2.7.egg/glacier/glacier.py", line 300, in upload
    args.name, args.partsize, args.uploadid, args.resume)
  File "/Library/Python/2.7/site-packages/glacier-0.2dev-py2.7.egg/glacier/GlacierWrapper.py", line 62, in wrapper
    ret = fn(*args, **kwargs)
  File "/Library/Python/2.7/site-packages/glacier-0.2dev-py2.7.egg/glacier/GlacierWrapper.py", line 221, in glacier_connect_wrap
    return func(*args, **kwargs)
  File "/Library/Python/2.7/site-packages/glacier-0.2dev-py2.7.egg/glacier/GlacierWrapper.py", line 62, in wrapper
    ret = fn(*args, **kwargs)
  File "/Library/Python/2.7/site-packages/glacier-0.2dev-py2.7.egg/glacier/GlacierWrapper.py", line 274, in sdb_connect_wrap
    return func(*args, **kwargs)
  File "/Library/Python/2.7/site-packages/glacier-0.2dev-py2.7.egg/glacier/GlacierWrapper.py", line 62, in wrapper
    ret = fn(*args, **kwargs)
  File "/Library/Python/2.7/site-packages/glacier-0.2dev-py2.7.egg/glacier/GlacierWrapper.py", line 1108, in upload
    writer.write(part)
  File "/Library/Python/2.7/site-packages/glacier-0.2dev-py2.7.egg/glacier/glaciercorecalls.py", line 129, in write
    data)
  File "/Library/Python/2.7/site-packages/boto-2.6.0-py2.7.egg/boto/glacier/layer1.py", line 625, in upload_part
    response_headers=response_headers)
  File "/Library/Python/2.7/site-packages/boto-2.6.0-py2.7.egg/boto/glacier/layer1.py", line 78, in make_request
    data=data)
  File "/Library/Python/2.7/site-packages/boto-2.6.0-py2.7.egg/boto/connection.py", line 910, in make_request
    return self._mexe(http_request, sender, override_num_retries)
  File "/Library/Python/2.7/site-packages/boto-2.6.0-py2.7.egg/boto/connection.py", line 872, in _mexe
    raise e
socket.gaierror: [Errno 8] nodename nor servname provided, or not known

Could the code be modified to recover from this error?

uskudnik commented 11 years ago

Tested (with a very small file) and it worked for me. Anyone has any more information?

echamberlain commented 11 years ago

Currently, I'm trying to upload a 3.6GB file and it won't upload for more than 100MB or so before failing.

The process should retry the upload on a 408, rather than fail.

It looks like others are reporting the problem too. https://forums.aws.amazon.com/thread.jspa?threadID=108795&tstart=0