← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1196953] Re: Glance logs 500 internal error when client disconnects during upload

 

** Changed in: glance
       Status: Fix Committed => Fix Released

** Changed in: glance
    Milestone: None => havana-3

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to Glance.
https://bugs.launchpad.net/bugs/1196953

Title:
  Glance logs 500 internal error when client disconnects during upload

Status in OpenStack Image Registry and Delivery Service (Glance):
  Fix Released

Bug description:
  If a user ^C 's the client during a chunked image upload,
  eventlet.wsgi.server will raise one of ValueError or IOError when
  trying to read the next chunk.

  This results in the following type of tracebacks in the api log:

  2013-07-02 12:37:16.057 10222 ERROR glance.api.v1.upload_utils [a35eb7a1-d1ea-41cf-9752-13aa999defe1
   4910be49bb594a8bb625488d2847bbd6 6c6d09cd051c4fc589d700624df40ef9] Failed to upload image
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils Traceback (most recent call last):
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils   File "/opt/stack/glance/glance/api/
  v1/upload_utils.py", line 87, in upload_data_to_store
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils     image_meta['size'])
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils   File "/opt/stack/glance/glance/stor
  e/filesystem.py", line 236, in add
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils     ChunkedFile.CHUNKSIZE):
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils   File "/opt/stack/glance/glance/comm
  on/utils.py", line 74, in chunkiter
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils     chunk = fp.read(chunk_size)
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils   File "/opt/stack/glance/glance/comm
  on/utils.py", line 106, in readfn
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils     result = fd.read(*args)
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils   File "/usr/lib/python2.7/dist-packa
  ges/eventlet/wsgi.py", line 149, in read
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils     return self._chunked_read(self.rf
  ile, length)
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils   File "/usr/lib/python2.7/dist-packa
  ges/eventlet/wsgi.py", line 139, in _chunked_read
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils     self.chunk_length = int(rfile.rea
  dline().split(";", 1)[0], 16)
  2013-07-02 12:37:16.057 10222 TRACE glance.api.v1.upload_utils ValueError: invalid literal for int()
   with base 16: ''

  These errors should probably be caught and handled more appropriately.

To manage notifications about this bug go to:
https://bugs.launchpad.net/glance/+bug/1196953/+subscriptions