Project

General

Profile

Bug #2873

Stack trace thrown when using obsync

Added by Matthew Wodrich about 9 years ago. Updated about 9 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
obsync
Target version:
% Done:

0%

Source:
Development
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

Traceback (most recent call last):
  File "/usr/bin/obsync", line 1215, in <module>
    local_copy = src.make_local_copy(sobj)
  File "/usr/bin/obsync", line 675, in make_local_copy
    raise ObsyncTemporaryException(e)
  File "/usr/bin/obsync", line 121, in __init__
    ObsyncException.__init__(self, "temporary", e)
  File "/usr/bin/obsync", line 111, in __init__
    self.tb = format_exc(100000)
NameError: global name 'format_exc' is not defined
ERROR TYPE: unknown, ORIGIN: source

When trying to copy a fairly large object (~14GB) from one S3 compatible gateway to another, it failed repeatably with this error.

Associated revisions

Revision 5962a9dd (diff)
Added by Matthew Wodrich about 9 years ago

obsync: add missing package specifier to format_exc

Fixes: #2873
Signed-off-by: Matthew Wodrich <>
Reviewed-by: Dan Mick <>

Revision 47b24c05 (diff)
Added by Matthew Wodrich about 9 years ago

obsync: add missing package specifier to format_exc

Fixes: #2873
Signed-off-by: Matthew Wodrich <>
Reviewed-by: Dan Mick <>

History

#1 Updated by Matthew Wodrich about 9 years ago

Figured out what the problem is, it appears that on L111, it should go from being

self.tb = format_exc(100000)

to
self.tb = traceback.format_exc(100000)

It's just that the traceback package name was left out.

When patched, I get the proper stack trace from the exception:

Traceback (most recent call last):
  File "/usr/bin/obsync", line 672, in make_local_copy
    k.get_contents_to_filename(temp_file)
  File "/usr/lib/python2.7/dist-packages/boto/s3/key.py", line 1279, in get_contents_to_filename
    response_headers=response_headers)
  File "/usr/lib/python2.7/dist-packages/boto/s3/key.py", line 1226, in get_contents_to_file
    response_headers=response_headers)
  File "/usr/lib/python2.7/dist-packages/boto/s3/key.py", line 1123, in get_file
    fp.write(bytes)
IOError: [Errno 28] No space left on device

#2 Updated by Dan Mick about 9 years ago

  • Category set to obsync
  • Status changed from New to Fix Under Review
  • Assignee set to Dan Mick
  • Target version set to v0.50
  • Source changed from Q/A to Development

#3 Updated by Dan Mick about 9 years ago

  • Status changed from Fix Under Review to Resolved

Also available in: Atom PDF