Bug: file fails to download on token refresh (stacktrace attached)
I'm using acd_cli from git.
Here's the stack:
16-08-29 06:57:56.764 [ERROR] [acd_cli] - Traceback (most recent call last):
File "/usr/local/bin/acd_cli.py", line 246, in wrapped
ret_val = f(*args, **kwargs)
File "/usr/local/bin/acd_cli.py", line 677, in download_file
write_callbacks=[hasher.update, pg_handler.update])
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/content.py", line 280, in download_file
self.chunked_download(node_id, f, offset=offset, **kwargs)
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/common.py", line 48, in decorated
return func(*args, **kwargs)
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/content.py", line 319, in chunked_download
headers={'Range': 'bytes=%d-%d' % (chunk_start, chunk_end)})
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/backoff_req.py", line 125, in get
return self._request('GET', url, acc_codes, **kwargs)
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/common.py", line 48, in decorated
return func(*args, **kwargs)
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/backoff_req.py", line 104, in _request
**kwargs)
File "/usr/local/lib/python3.4/dist-packages/requests/sessions.py", line 461, in request
prep = self.prepare_request(req)
File "/usr/local/lib/python3.4/dist-packages/requests/sessions.py", line 394, in prepare_request
hooks=merge_hooks(request.hooks, self.hooks),
File "/usr/local/lib/python3.4/dist-packages/requests/models.py", line 298, in prepare
self.prepare_auth(auth, url)
File "/usr/local/lib/python3.4/dist-packages/requests/models.py", line 500, in prepare_auth
r = auth(self)
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/oauth.py", line 50, in __call__
r.headers['Authorization'] = self.get_auth_token()
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/oauth.py", line 117, in get_auth_token
self.refresh_auth_token()
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/oauth.py", line 216, in refresh_auth_token
self.write_oauth_data()
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/oauth.py", line 135, in write_oauth_data
os.rename(self.oauth_data_path, rm_nm)
FileNotFoundError: [Errno 2] No such file or directory: '/root/.cache/acd_cli/oauth_data' -> '/root/.cache/acd_cli/oauth_data39D5868D'
Looks like there was a retry in the middle of the file, and on retry auth token refreshed.
I have the full debug log. Will append if necessary.
That's odd. Did you use multiple connections?
acdcli -dd download -r 4 -x 1 /archive/old/foto/2012/2012.part15.rar
I got the similar error when I was uploading a lot of files (over 100GB in total).
--- Logging error ---
Traceback (most recent call last):
File "/usr/local/bin/acd_cli.py", line 246, in wrapped
ret_val = f(*args, **kwargs)
File "/usr/local/bin/acd_cli.py", line 491, in upload_file
deduplication=dedup)
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/content.py", line 137, in upload_file
headers={'Content-Type': m.content_type})
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/backoff_req.py", line 128, in post
return self._request('POST', url, acc_codes, **kwargs)
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/common.py", line 48, in decorated
return func(*args, **kwargs)
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/backoff_req.py", line 104, in _request
**kwargs)
File "/usr/local/lib/python3.4/dist-packages/requests/sessions.py", line 461, in request
prep = self.prepare_request(req)
File "/usr/local/lib/python3.4/dist-packages/requests/sessions.py", line 394, in prepare_request
hooks=merge_hooks(request.hooks, self.hooks),
File "/usr/local/lib/python3.4/dist-packages/requests/models.py", line 298, in prepare
self.prepare_auth(auth, url)
File "/usr/local/lib/python3.4/dist-packages/requests/models.py", line 500, in prepare_auth
r = auth(self)
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/oauth.py", line 50, in __call__
r.headers['Authorization'] = self.get_auth_token()
File "/usr/local/lib/python3.4/dist-packages/acdcli/api/oauth.py", line 112, in get_auth_token
with open(self.oauth_data_path) as oa:
FileNotFoundError: [Errno 2] No such file or directory: '/home/jun06t/.cache/acd_cli/oauth_data'
When I start to upload files, it works well.
But after a while it occurs above error and stop uploading.
Of course the file '.cache/acd_cli/oauth_data' exists.
my environment is following.
OS: OSX 10.11.6
acdcli: v0.3.2
and the command i used is this.
$ acd_cli --utf upload --overwrite --exclude-ending encfs6.xml ${ACD_HOME}/local/files/* ${ACD_SUB}/
thanks