Reviewed: https://review.openstack.org/523366 Committed: https://git.openstack.org/cgit/openstack/glance/commit/?id=ffc3923e93dc1d4eea789ce5163d176efb7d685b Submitter: Zuul Branch: master
commit ffc3923e93dc1d4eea789ce5163d176efb7d685b Author: Abhishek Kekane <akek...@redhat.com> Date: Tue Nov 28 09:51:02 2017 +0000 Fix unreachable 'ImageSizeLimitExceeded' exception in image-upload ImageSizeLimitExceeded exception block [1] is unreachable in upload because it is caught at [2] and raised StorageQuotaFull exception from there. The problem here is that we have nested usage of the limiting reader. To make it correct changed the limiting reader to accept exception class as parameter so that we can pass the StorageQuotaFull in case LimitingReader is used for quota check and ImageSizeExceeded exception if it is used for image size cap check. [1] https://github.com/openstack/glance/blob/fd16fa4f258fd3f77c14900a019e97bb90bc5ac0/glance/api/v2/image_data.py#L230 [2] https://github.com/openstack/glance/blob/fd16fa4f258fd3f77c14900a019e97bb90bc5ac0/glance/quota/__init__.py#L305 Closes-Bug: #1734832 Change-Id: I5a419b763bee7f983c2a94c6f3a2245281e86743 ** Changed in: glance Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to Glance. https://bugs.launchpad.net/bugs/1734832 Title: Unreachable 'ImageSizeLimitExceeded' exception block in upload call Status in Glance: Fix Released Bug description: ImageSizeLimitExceeded exception block [1] is unreachable in upload because it is caught at [2] and raised StorageQuotaFull exception from there. Further as it raised StorageQuataFull exception it prints None as a size in the glance-api logs. Reference glance-api-logs: Nov 28 07:04:13 devstack devstack@g-api.service[11453]: ERROR glance.api.v2.image_data [None req-17b243db-9b3d-46d9-97f0-05f74bc76e18 admin admin] Image exceeds the storage quota: The size of the data None will exceed the limit. None bytes remaining.: StorageQuotaFull: The size of the data None will exceed the limit. None bytes remaining. To make it correct we need to remove code from [2] where ImageSizeLimitExceeded is caught and StorageQuotaFull is raised so that it will be reachable in the controller [1]. [1] https://github.com/openstack/glance/blob/master/glance/api/v2/image_data.py#L232 [2] https://github.com/openstack/glance/blob/master/glance/quota/__init__.py#L305 To manage notifications about this bug go to: https://bugs.launchpad.net/glance/+bug/1734832/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp