Bug #6959

[SDKs] arv-copy raises an unexpected backtrace on ^C

Added by Brett Smith about 4 years ago. Updated about 4 years ago.

Status:
New
Priority:
Normal
Assigned To:
-
Category:
SDKs
Target version:
Start date:
08/11/2015
Due date:
% Done:

0%

Estimated time:
Story points:
-

Description

I sent ^C to an arv-copy process while it was in the middle of uploading data to Keep. That wrote this traceback:

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/arvados/keep.py", line 484, in _headerfunction
    def _headerfunction(self, header_line):
KeyboardInterrupt

However, the process didn't end there. It wrote some more debug output, then ultimately failed with this:

2015-08-11 20:14:02 arvados.keep[15330] INFO: No more Keep services to try; giving up
Traceback (most recent call last):
  File "/usr/local/bin/arv-copy", line 4, in <module>
    main()
  File "/usr/local/lib/python2.7/dist-packages/arvados/commands/arv_copy.py", line 119, in main
    args)
  File "/usr/local/lib/python2.7/dist-packages/arvados/commands/arv_copy.py", line 552, in copy_collection
    data = src_keep.get(word)
  File "/usr/local/lib/python2.7/dist-packages/arvados/retry.py", line 154, in num_retries_setter
    return orig_func(self, *args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/arvados/keep.py", line 907, in get
    "failed to read {}".format(loc_s), service_errors, label="service")
arvados.errors.KeepReadError: failed to read [block]: service https://keep.qr1hi.arvadosapi.com:443/ responded with 0 (23, 'Failed writing header')

I would've preferred to see the original KeyboardInterrupt exception end the process. Having it translate to another exception this way seems surprising.

History

#1 Updated by Brett Smith about 4 years ago

  • Target version set to Arvados Future Sprints

Also available in: Atom PDF