)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"181100234b01a8bf381527e90cc7e1771182d57d","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Chaynika Saikia \u003ccsaikia@asu.edu\u003e"},{"line_number":5,"context_line":"CommitDate: 2017-07-06 11:07:20 -0400"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add async error message for insufficient space for create vol"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"cinder does not provide an async error message when a new volume"},{"line_number":10,"context_line":"is created from an image if there is insufficient space to download"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3f1d235d_f9517637","line":7,"updated":"2017-07-06 15:22:31.000000000","message":"Nit: If you do an update, please reformat the commit message to fit within the guidelines.\n\nhttps://wiki.openstack.org/wiki/GitCommitMessages#Summary_of_Git_commit_message_structure","commit_id":"04da0cfe0581382edf73c0747a9e51bdb71c17d7"},{"author":{"_account_id":20191,"name":"Dinesh Bhor","email":"bhordinesh07@gmail.com","username":"dineshbhor"},"change_message_id":"6e0f53499251123fb941a281cbfa9d3c3e4a76ec","unresolved":false,"context_lines":[{"line_number":12,"context_line":"in fetch() or insufficient space error from check_available_space()"},{"line_number":13,"context_line":"cinder message API generates an async error message for the user."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"A new exception ImageSizeExceeded() has been created to handle this"},{"line_number":16,"context_line":"error and whenever this exception is come across, cinder generates"},{"line_number":17,"context_line":"an error message. Changes are made in the create_volume flow to"},{"line_number":18,"context_line":"handle this exception and generate the message."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"3f1d235d_cec43d43","line":15,"range":{"start_line":15,"start_character":16,"end_line":15,"end_character":33},"updated":"2017-07-11 08:37:36.000000000","message":"You mean ImageTooBig?","commit_id":"bb76ce5ac2098e9faf2274875b142190689fbd6a"},{"author":{"_account_id":26155,"name":"Chaynika Saikia","email":"csaikia@asu.edu","username":"csaikia"},"change_message_id":"1c8ab138dce0e89626f133cc8cf834725fc5bc25","unresolved":false,"context_lines":[{"line_number":12,"context_line":"in fetch() or insufficient space error from check_available_space()"},{"line_number":13,"context_line":"cinder message API generates an async error message for the user."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"A new exception ImageSizeExceeded() has been created to handle this"},{"line_number":16,"context_line":"error and whenever this exception is come across, cinder generates"},{"line_number":17,"context_line":"an error message. Changes are made in the create_volume flow to"},{"line_number":18,"context_line":"handle this exception and generate the message."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"3f1d235d_6adf3cd6","line":15,"range":{"start_line":15,"start_character":16,"end_line":15,"end_character":33},"in_reply_to":"3f1d235d_cec43d43","updated":"2017-07-11 20:32:36.000000000","message":"Oops I forgot to modify this!","commit_id":"bb76ce5ac2098e9faf2274875b142190689fbd6a"}],"cinder/exception.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"181100234b01a8bf381527e90cc7e1771182d57d","unresolved":false,"context_lines":[{"line_number":257,"context_line":"    message \u003d _(\"Image %(image_id)s is unacceptable: %(reason)s\")"},{"line_number":258,"context_line":""},{"line_number":259,"context_line":""},{"line_number":260,"context_line":"class ImageSizeExceeded(Invalid):"},{"line_number":261,"context_line":"    message \u003d _(\"Image %(image_id)s size exceeded available \""},{"line_number":262,"context_line":"                \"disk space: %(reason)s\")"},{"line_number":263,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f1d235d_14ecf727","line":260,"range":{"start_line":260,"start_character":6,"end_line":260,"end_character":23},"updated":"2017-07-06 15:22:31.000000000","message":"Not really sold on this name. To me at least, it makes it sound like there is a problem with the image. But I don\u0027t really have a better suggestion.","commit_id":"04da0cfe0581382edf73c0747a9e51bdb71c17d7"},{"author":{"_account_id":26155,"name":"Chaynika Saikia","email":"csaikia@asu.edu","username":"csaikia"},"change_message_id":"2f037ef6a8a8d2c0a80ceab48853bfaeb93c7613","unresolved":false,"context_lines":[{"line_number":257,"context_line":"    message \u003d _(\"Image %(image_id)s is unacceptable: %(reason)s\")"},{"line_number":258,"context_line":""},{"line_number":259,"context_line":""},{"line_number":260,"context_line":"class ImageSizeExceeded(Invalid):"},{"line_number":261,"context_line":"    message \u003d _(\"Image %(image_id)s size exceeded available \""},{"line_number":262,"context_line":"                \"disk space: %(reason)s\")"},{"line_number":263,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f1d235d_34f7f35b","line":260,"range":{"start_line":260,"start_character":6,"end_line":260,"end_character":23},"in_reply_to":"3f1d235d_14ecf727","updated":"2017-07-06 15:46:41.000000000","message":"I can use ImageSizeExceedsAvailSpace() instead but I think it might be too long. I shall wait for more suggestions on the name for now.","commit_id":"04da0cfe0581382edf73c0747a9e51bdb71c17d7"}],"cinder/image/image_utils.py":[{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"246a64f7671d41612d0e806dd45c1741a0027d74","unresolved":false,"context_lines":[{"line_number":215,"context_line":"                image_service.download(context, image_id, image_file)"},{"line_number":216,"context_line":"            except IOError as e:"},{"line_number":217,"context_line":"                if e.errno \u003d\u003d errno.ENOSPC:"},{"line_number":218,"context_line":"                    # TODO(eharney): Fire an async error message for this"},{"line_number":219,"context_line":"                    params \u003d {\u0027path\u0027: os.path.dirname(path),"},{"line_number":220,"context_line":"                              \u0027image\u0027: image_id}"},{"line_number":221,"context_line":"                    reason \u003d _(\"No space left in image_conversion_dir \""}],"source_content_type":"text/x-python","patch_set":3,"id":"3f1d235d_da157e3e","line":218,"range":{"start_line":218,"start_character":20,"end_line":218,"end_character":73},"updated":"2017-07-06 21:30:36.000000000","message":"Remove this TODO :)","commit_id":"561d1f7a8863ccd57be967291d4190dd114fd759"},{"author":{"_account_id":26155,"name":"Chaynika Saikia","email":"csaikia@asu.edu","username":"csaikia"},"change_message_id":"92ba93facfb14d52e148a27d31cb8f8125e78903","unresolved":false,"context_lines":[{"line_number":215,"context_line":"                image_service.download(context, image_id, image_file)"},{"line_number":216,"context_line":"            except IOError as e:"},{"line_number":217,"context_line":"                if e.errno \u003d\u003d errno.ENOSPC:"},{"line_number":218,"context_line":"                    # TODO(eharney): Fire an async error message for this"},{"line_number":219,"context_line":"                    params \u003d {\u0027path\u0027: os.path.dirname(path),"},{"line_number":220,"context_line":"                              \u0027image\u0027: image_id}"},{"line_number":221,"context_line":"                    reason \u003d _(\"No space left in image_conversion_dir \""}],"source_content_type":"text/x-python","patch_set":3,"id":"3f1d235d_7dd08b54","line":218,"range":{"start_line":218,"start_character":20,"end_line":218,"end_character":73},"in_reply_to":"3f1d235d_da157e3e","updated":"2017-07-07 13:29:25.000000000","message":"Sure will do! :)","commit_id":"561d1f7a8863ccd57be967291d4190dd114fd759"},{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"df68595676a6077d580827b2ae327d4521b2429e","unresolved":false,"context_lines":[{"line_number":516,"context_line":"        msg \u003d (\u0027There is no space to convert image. \u0027"},{"line_number":517,"context_line":"               \u0027Requested: %(image_size)s, available: %(free_space)s\u0027"},{"line_number":518,"context_line":"               ) % {\u0027image_size\u0027: image_size, \u0027free_space\u0027: free_space}"},{"line_number":519,"context_line":"        raise exception.ImageSizeExceeded(image_id\u003dimage_id, reason\u003dmsg)"},{"line_number":520,"context_line":""},{"line_number":521,"context_line":""},{"line_number":522,"context_line":"def is_xenserver_format(image_meta):"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f1d235d_2daad018","line":519,"range":{"start_line":519,"start_character":8,"end_line":519,"end_character":72},"updated":"2017-07-08 15:31:50.000000000","message":"I don\u0027t think that name is a good choice, also given it\u0027s the exact same message, does it really need to be a new exception at all?","commit_id":"20dd32ed400e2b6a7fc47b885874e9a5156a4143"},{"author":{"_account_id":26155,"name":"Chaynika Saikia","email":"csaikia@asu.edu","username":"csaikia"},"change_message_id":"ea48796ad093190068ef75b1400ce3026753c2df","unresolved":false,"context_lines":[{"line_number":516,"context_line":"        msg \u003d (\u0027There is no space to convert image. \u0027"},{"line_number":517,"context_line":"               \u0027Requested: %(image_size)s, available: %(free_space)s\u0027"},{"line_number":518,"context_line":"               ) % {\u0027image_size\u0027: image_size, \u0027free_space\u0027: free_space}"},{"line_number":519,"context_line":"        raise exception.ImageSizeExceeded(image_id\u003dimage_id, reason\u003dmsg)"},{"line_number":520,"context_line":""},{"line_number":521,"context_line":""},{"line_number":522,"context_line":"def is_xenserver_format(image_meta):"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f1d235d_c602190a","line":519,"range":{"start_line":519,"start_character":8,"end_line":519,"end_character":72},"in_reply_to":"3f1d235d_2daad018","updated":"2017-07-08 22:58:28.000000000","message":"This exception is required for two reasons. Firstly we want to only have the user message generated for this particular exception(type of error) and not if there is any other exception. Secondly, for the new changes made in https://review.openstack.org/#/c/448384/ it takes an exception as well to map to that particular type of error. I shall take your feedback on changing the name as well.","commit_id":"20dd32ed400e2b6a7fc47b885874e9a5156a4143"}],"cinder/message/message_field.py":[{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"df68595676a6077d580827b2ae327d4521b2429e","unresolved":false,"context_lines":[{"line_number":57,"context_line":"                                  _(\"Volume\u0027s attach mode is invalid.\"))"},{"line_number":58,"context_line":"    QUOTA_EXCEED \u003d (\u0027006\u0027,"},{"line_number":59,"context_line":"                    _(\"Not enough quota resource for operation.\"))"},{"line_number":60,"context_line":"    NO_SPACE_FOR_IMAGE \u003d (\u0027007\u0027,"},{"line_number":61,"context_line":"                          _(\"Image used for creating volume exceeds \""},{"line_number":62,"context_line":"                            \"available space.\"))"},{"line_number":63,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3f1d235d_0da71452","line":60,"range":{"start_line":60,"start_character":4,"end_line":60,"end_character":22},"updated":"2017-07-08 15:31:50.000000000","message":"maybe just \"NOT_ENOUGH...\" or \"INSUFFICIENT...\"","commit_id":"20dd32ed400e2b6a7fc47b885874e9a5156a4143"},{"author":{"_account_id":26155,"name":"Chaynika Saikia","email":"csaikia@asu.edu","username":"csaikia"},"change_message_id":"ea48796ad093190068ef75b1400ce3026753c2df","unresolved":false,"context_lines":[{"line_number":57,"context_line":"                                  _(\"Volume\u0027s attach mode is invalid.\"))"},{"line_number":58,"context_line":"    QUOTA_EXCEED \u003d (\u0027006\u0027,"},{"line_number":59,"context_line":"                    _(\"Not enough quota resource for operation.\"))"},{"line_number":60,"context_line":"    NO_SPACE_FOR_IMAGE \u003d (\u0027007\u0027,"},{"line_number":61,"context_line":"                          _(\"Image used for creating volume exceeds \""},{"line_number":62,"context_line":"                            \"available space.\"))"},{"line_number":63,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3f1d235d_a6071d19","line":60,"range":{"start_line":60,"start_character":4,"end_line":60,"end_character":22},"in_reply_to":"3f1d235d_0da71452","updated":"2017-07-08 22:58:28.000000000","message":"Thanks I shall change it","commit_id":"20dd32ed400e2b6a7fc47b885874e9a5156a4143"}],"cinder/tests/unit/volume/test_driver.py":[{"author":{"_account_id":20191,"name":"Dinesh Bhor","email":"bhordinesh07@gmail.com","username":"dineshbhor"},"change_message_id":"6e0f53499251123fb941a281cbfa9d3c3e4a76ec","unresolved":false,"context_lines":[{"line_number":469,"context_line":"        mock_fetch_to_raw.side_effect \u003d excep"},{"line_number":470,"context_line":""},{"line_number":471,"context_line":"        encryption \u003d {\u0027encryption_key_id\u0027: fake.ENCRYPTION_KEY_ID}"},{"line_number":472,"context_line":"        self.assertRaises(type(excep),"},{"line_number":473,"context_line":"                          self.volume.driver.copy_image_to_encrypted_volume,"},{"line_number":474,"context_line":"                          self.context, volume, image_service, fake.IMAGE_ID)"},{"line_number":475,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"3f1d235d_8e8e4525","line":472,"range":{"start_line":472,"start_character":26,"end_line":472,"end_character":30},"updated":"2017-07-11 08:37:36.000000000","message":"May I understand the reason behind using \u0027type\u0027 here?","commit_id":"bb76ce5ac2098e9faf2274875b142190689fbd6a"},{"author":{"_account_id":26155,"name":"Chaynika Saikia","email":"csaikia@asu.edu","username":"csaikia"},"change_message_id":"1c8ab138dce0e89626f133cc8cf834725fc5bc25","unresolved":false,"context_lines":[{"line_number":469,"context_line":"        mock_fetch_to_raw.side_effect \u003d excep"},{"line_number":470,"context_line":""},{"line_number":471,"context_line":"        encryption \u003d {\u0027encryption_key_id\u0027: fake.ENCRYPTION_KEY_ID}"},{"line_number":472,"context_line":"        self.assertRaises(type(excep),"},{"line_number":473,"context_line":"                          self.volume.driver.copy_image_to_encrypted_volume,"},{"line_number":474,"context_line":"                          self.context, volume, image_service, fake.IMAGE_ID)"},{"line_number":475,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"3f1d235d_0a5c487c","line":472,"range":{"start_line":472,"start_character":26,"end_line":472,"end_character":30},"in_reply_to":"3f1d235d_8e8e4525","updated":"2017-07-11 20:32:36.000000000","message":"If we do not use type then it gives a TypeError with assertRaises(). From the traceback:\n\nTypeError: issubclass() arg 2 must be a class or tuple of classes","commit_id":"bb76ce5ac2098e9faf2274875b142190689fbd6a"}],"cinder/volume/driver.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"181100234b01a8bf381527e90cc7e1771182d57d","unresolved":false,"context_lines":[{"line_number":806,"context_line":"                    size\u003dvolume[\u0027size\u0027])"},{"line_number":807,"context_line":"            except exception.ImageSizeExceeded:"},{"line_number":808,"context_line":"                with excutils.save_and_reraise_exception():"},{"line_number":809,"context_line":"                    LOG.exception(\"Copying image %(image_id)s\""},{"line_number":810,"context_line":"                                  \"to volume failed.\","},{"line_number":811,"context_line":"                                  {\u0027image_id\u0027: image_id})"},{"line_number":812,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"3f1d235d_342ff388","line":809,"range":{"start_line":809,"start_character":61,"end_line":809,"end_character":62},"updated":"2017-07-06 15:22:31.000000000","message":"Missing space on end.","commit_id":"04da0cfe0581382edf73c0747a9e51bdb71c17d7"},{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"df68595676a6077d580827b2ae327d4521b2429e","unresolved":false,"context_lines":[{"line_number":805,"context_line":"                    self.configuration.volume_dd_blocksize,"},{"line_number":806,"context_line":"                    size\u003dvolume[\u0027size\u0027])"},{"line_number":807,"context_line":"            except exception.ImageSizeExceeded:"},{"line_number":808,"context_line":"                with excutils.save_and_reraise_exception():"},{"line_number":809,"context_line":"                    LOG.exception(\"Copying image %(image_id)s \""},{"line_number":810,"context_line":"                                  \"to volume failed.\","},{"line_number":811,"context_line":"                                  {\u0027image_id\u0027: image_id})"},{"line_number":812,"context_line":""},{"line_number":813,"context_line":"            finally:"},{"line_number":814,"context_line":"                if encrypted:"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f1d235d_ad6b80ef","line":811,"range":{"start_line":808,"start_character":16,"end_line":811,"end_character":57},"updated":"2017-07-08 15:31:50.000000000","message":"Don\u0027t you want to call out the size issues here?  Including either the exc message or the size info?","commit_id":"20dd32ed400e2b6a7fc47b885874e9a5156a4143"},{"author":{"_account_id":26155,"name":"Chaynika Saikia","email":"csaikia@asu.edu","username":"csaikia"},"change_message_id":"ea48796ad093190068ef75b1400ce3026753c2df","unresolved":false,"context_lines":[{"line_number":805,"context_line":"                    self.configuration.volume_dd_blocksize,"},{"line_number":806,"context_line":"                    size\u003dvolume[\u0027size\u0027])"},{"line_number":807,"context_line":"            except exception.ImageSizeExceeded:"},{"line_number":808,"context_line":"                with excutils.save_and_reraise_exception():"},{"line_number":809,"context_line":"                    LOG.exception(\"Copying image %(image_id)s \""},{"line_number":810,"context_line":"                                  \"to volume failed.\","},{"line_number":811,"context_line":"                                  {\u0027image_id\u0027: image_id})"},{"line_number":812,"context_line":""},{"line_number":813,"context_line":"            finally:"},{"line_number":814,"context_line":"                if encrypted:"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f1d235d_261b0d74","line":811,"range":{"start_line":808,"start_character":16,"end_line":811,"end_character":57},"in_reply_to":"3f1d235d_ad6b80ef","updated":"2017-07-08 22:58:28.000000000","message":"I shall make the necessary changes.","commit_id":"20dd32ed400e2b6a7fc47b885874e9a5156a4143"}],"cinder/volume/flows/manager/create_volume.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"181100234b01a8bf381527e90cc7e1771182d57d","unresolved":false,"context_lines":[{"line_number":563,"context_line":"                          {\u0027volume_id\u0027: volume.id})"},{"line_number":564,"context_line":"            raise exception.ImageUnacceptable(ex)"},{"line_number":565,"context_line":"        except exception.ImageSizeExceeded as ex:"},{"line_number":566,"context_line":"            LOG.exception(\"Failed to copy image %(image_id)s to volume:\""},{"line_number":567,"context_line":"                          \"%(volume_id)s\","},{"line_number":568,"context_line":"                          {\u0027volume_id\u0027: volume.id, \u0027image_id\u0027: image_id})"},{"line_number":569,"context_line":"            excutils.save_and_reraise_exception()"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f1d235d_74ac4bec","line":566,"range":{"start_line":566,"start_character":71,"end_line":566,"end_character":72},"updated":"2017-07-06 15:22:31.000000000","message":"Missing space at end.","commit_id":"04da0cfe0581382edf73c0747a9e51bdb71c17d7"}]}
