)]}'
{"manila/api/contrib/share_actions.py":[{"author":{"_account_id":11865,"name":"Clinton Knight","email":"cknight@netapp.com","username":"cknight"},"change_message_id":"99626fde965408f8f2f27a5a2704e4aafda92230","unresolved":false,"context_lines":[{"line_number":149,"context_line":"        except (KeyError, ValueError, TypeError):"},{"line_number":150,"context_line":"            msg \u003d _(\"New share size must be specified as an integer.\")"},{"line_number":151,"context_line":"            raise webob.exc.HTTPBadRequest(explanation\u003dmsg)"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"        try:"},{"line_number":154,"context_line":"            self.share_api.shrink(context, share, size)"},{"line_number":155,"context_line":"        except (exception.InvalidInput, exception.InvalidShare) as e:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_87ba3d09","line":152,"updated":"2015-05-26 19:41:46.000000000","message":"Somewhere (the API layer seems the best place) the code should reject values \u003c 1.  I was able to send a new size of zero to the driver.","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"61c9b5b171e20df83760a9e76b136d6e0195e584","unresolved":false,"context_lines":[{"line_number":149,"context_line":"        except (KeyError, ValueError, TypeError):"},{"line_number":150,"context_line":"            msg \u003d _(\"New share size must be specified as an integer.\")"},{"line_number":151,"context_line":"            raise webob.exc.HTTPBadRequest(explanation\u003dmsg)"},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"        try:"},{"line_number":154,"context_line":"            self.share_api.shrink(context, share, size)"},{"line_number":155,"context_line":"        except (exception.InvalidInput, exception.InvalidShare) as e:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_c95158da","line":152,"in_reply_to":"7a016987_87ba3d09","updated":"2015-05-27 09:53:50.000000000","message":"Done","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"}],"manila/common/constants.py":[{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"0a0590b254dab610966ac171c2c6772a4945ef64","unresolved":false,"context_lines":[{"line_number":31,"context_line":"STATUS_UNMANAGED \u003d \u0027UNMANAGED\u0027"},{"line_number":32,"context_line":"STATUS_EXTENDING \u003d \u0027EXTENDING\u0027"},{"line_number":33,"context_line":"STATUS_EXTENDING_ERROR \u003d \u0027EXTENDING_ERROR\u0027"},{"line_number":34,"context_line":"STATUS_SHRINKING \u003d \u0027SHRINKING\u0027"},{"line_number":35,"context_line":"STATUS_SHRINKING_ERROR \u003d \u0027SHRINKING_ERROR\u0027"},{"line_number":36,"context_line":"STATUS_SHRINKING_POSSIBLE_DATA_LOSS_ERROR \u003d ("},{"line_number":37,"context_line":"    \u0027SHRINKING_POSSIBLE_DATA_LOSS_ERROR\u0027"}],"source_content_type":"text/x-python","patch_set":9,"id":"7a016987_0364bae2","line":34,"updated":"2015-05-28 10:03:15.000000000","message":"Please, use lowercase for new things.\n\nAll statuses will be lowercase soon.\n\nSee:\n\nhttps://bugs.launchpad.net/manila/+bug/1459598","commit_id":"a01cfc83401be6ef2cfff49ac235616bac2a1216"}],"manila/exception.py":[{"author":{"_account_id":11865,"name":"Clinton Knight","email":"cknight@netapp.com","username":"cknight"},"change_message_id":"51f8a88558acf7e4236557d8f754c4056ebc930d","unresolved":false,"context_lines":[{"line_number":483,"context_line":""},{"line_number":484,"context_line":""},{"line_number":485,"context_line":"class ShareShrinkingError(ManilaException):"},{"line_number":486,"context_line":"    message \u003d _(\"Share %(share_id)s could not be shrank due to error \""},{"line_number":487,"context_line":"                \"in the driver: %(reason)s\")"},{"line_number":488,"context_line":""},{"line_number":489,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_8db949ef","line":486,"updated":"2015-05-26 19:39:36.000000000","message":"s/shrank/shrunk/","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"61c9b5b171e20df83760a9e76b136d6e0195e584","unresolved":false,"context_lines":[{"line_number":483,"context_line":""},{"line_number":484,"context_line":""},{"line_number":485,"context_line":"class ShareShrinkingError(ManilaException):"},{"line_number":486,"context_line":"    message \u003d _(\"Share %(share_id)s could not be shrank due to error \""},{"line_number":487,"context_line":"                \"in the driver: %(reason)s\")"},{"line_number":488,"context_line":""},{"line_number":489,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_09a0908f","line":486,"in_reply_to":"7a016987_8db949ef","updated":"2015-05-27 09:53:50.000000000","message":"Done","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":11865,"name":"Clinton Knight","email":"cknight@netapp.com","username":"cknight"},"change_message_id":"51f8a88558acf7e4236557d8f754c4056ebc930d","unresolved":false,"context_lines":[{"line_number":488,"context_line":""},{"line_number":489,"context_line":""},{"line_number":490,"context_line":"class ShareShrinkingPossibleDataLoss(ManilaException):"},{"line_number":491,"context_line":"    message \u003d _(\"Share %(share_id)s could not be shrank due to \""},{"line_number":492,"context_line":"                \"possible data loss \")"},{"line_number":493,"context_line":""},{"line_number":494,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_cdc74163","line":491,"updated":"2015-05-26 19:39:36.000000000","message":"s/shrank/shrunk/","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"61c9b5b171e20df83760a9e76b136d6e0195e584","unresolved":false,"context_lines":[{"line_number":488,"context_line":""},{"line_number":489,"context_line":""},{"line_number":490,"context_line":"class ShareShrinkingPossibleDataLoss(ManilaException):"},{"line_number":491,"context_line":"    message \u003d _(\"Share %(share_id)s could not be shrank due to \""},{"line_number":492,"context_line":"                \"possible data loss \")"},{"line_number":493,"context_line":""},{"line_number":494,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_e9ac148e","line":491,"in_reply_to":"7a016987_cdc74163","updated":"2015-05-27 09:53:50.000000000","message":"Done","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"4a117585e438645022cdc531ac7c3dcfab3ecde5","unresolved":false,"context_lines":[{"line_number":489,"context_line":""},{"line_number":490,"context_line":"class ShareShrinkingPossibleDataLoss(ManilaException):"},{"line_number":491,"context_line":"    message \u003d _(\"Share %(share_id)s could not be shrank due to \""},{"line_number":492,"context_line":"                \"possible data loss \")"},{"line_number":493,"context_line":""},{"line_number":494,"context_line":""},{"line_number":495,"context_line":"class InstanceNotFound(NotFound):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_f52422b3","line":492,"updated":"2015-05-25 17:26:01.000000000","message":"Remove space at the end","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"61c9b5b171e20df83760a9e76b136d6e0195e584","unresolved":false,"context_lines":[{"line_number":489,"context_line":""},{"line_number":490,"context_line":"class ShareShrinkingPossibleDataLoss(ManilaException):"},{"line_number":491,"context_line":"    message \u003d _(\"Share %(share_id)s could not be shrank due to \""},{"line_number":492,"context_line":"                \"possible data loss \")"},{"line_number":493,"context_line":""},{"line_number":494,"context_line":""},{"line_number":495,"context_line":"class InstanceNotFound(NotFound):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_a9b5fcd0","line":492,"in_reply_to":"7a016987_f52422b3","updated":"2015-05-27 09:53:50.000000000","message":"Done","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"}],"manila/share/api.py":[{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"a74273d43058de3b1b50847efea303ab62a2cab0","unresolved":false,"context_lines":[{"line_number":704,"context_line":""},{"line_number":705,"context_line":"        self.update(context, share, {\u0027status\u0027: constants.STATUS_SHRINKING})"},{"line_number":706,"context_line":"        self.share_rpcapi.shrink_share(context, share, new_size)"},{"line_number":707,"context_line":"        LOG.info(_LI(\"Shrink share request issued successfully.\"),"},{"line_number":708,"context_line":"                 resource\u003dshare)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a016987_e0d97b23","line":707,"updated":"2015-05-19 11:45:15.000000000","message":"Please, add here ID of a share. And, maybe old and new size of a share.","commit_id":"dd098902a5a3debf1d903635ed5e08ff69d04263"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"100c861dd5338e85af52044ac840e33a69fd2b91","unresolved":false,"context_lines":[{"line_number":704,"context_line":""},{"line_number":705,"context_line":"        self.update(context, share, {\u0027status\u0027: constants.STATUS_SHRINKING})"},{"line_number":706,"context_line":"        self.share_rpcapi.shrink_share(context, share, new_size)"},{"line_number":707,"context_line":"        LOG.info(_LI(\"Shrink share request issued successfully.\"),"},{"line_number":708,"context_line":"                 resource\u003dshare)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a016987_69567d2b","line":707,"in_reply_to":"7a016987_e0d97b23","updated":"2015-05-20 14:17:08.000000000","message":"Done","commit_id":"dd098902a5a3debf1d903635ed5e08ff69d04263"},{"author":{"_account_id":11865,"name":"Clinton Knight","email":"cknight@netapp.com","username":"cknight"},"change_message_id":"51f8a88558acf7e4236557d8f754c4056ebc930d","unresolved":false,"context_lines":[{"line_number":702,"context_line":"                                               \u0027size\u0027: share[\u0027size\u0027]})"},{"line_number":703,"context_line":"            raise exception.InvalidInput(reason\u003dmsg)"},{"line_number":704,"context_line":""},{"line_number":705,"context_line":"        self.update(context, share, {\u0027status\u0027: constants.STATUS_SHRINKING})"},{"line_number":706,"context_line":"        self.share_rpcapi.shrink_share(context, share, new_size)"},{"line_number":707,"context_line":"        LOG.info(_LI(\"Shrink share (id\u003d%(id)s) request issued successfully.\""},{"line_number":708,"context_line":"                     \" New size: %(size)s\") % {\u0027id\u0027: share[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_674ce176","line":705,"updated":"2015-05-26 19:39:36.000000000","message":"Why are we setting the status to the uppercase form of the string?  This causes the CLI to report \u0027SHRINKING\u0027 instead of \u0027shrinking\u0027.\n\nAfter the shrink is done, the manager correctly does sets the status to STATUS_AVAILABLE.lower()","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"61c9b5b171e20df83760a9e76b136d6e0195e584","unresolved":false,"context_lines":[{"line_number":702,"context_line":"                                               \u0027size\u0027: share[\u0027size\u0027]})"},{"line_number":703,"context_line":"            raise exception.InvalidInput(reason\u003dmsg)"},{"line_number":704,"context_line":""},{"line_number":705,"context_line":"        self.update(context, share, {\u0027status\u0027: constants.STATUS_SHRINKING})"},{"line_number":706,"context_line":"        self.share_rpcapi.shrink_share(context, share, new_size)"},{"line_number":707,"context_line":"        LOG.info(_LI(\"Shrink share (id\u003d%(id)s) request issued successfully.\""},{"line_number":708,"context_line":"                     \" New size: %(size)s\") % {\u0027id\u0027: share[\u0027id\u0027],"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_ee765a05","line":705,"in_reply_to":"7a016987_674ce176","updated":"2015-05-27 09:53:50.000000000","message":"Please see Valery\u0027s comment from https://review.openstack.org/#/c/182377/5/manila/share/manager.py :\n\n\"Lower case for shares is left-over. For new things we use upper case statuses from constants. So, either left here upper case or add NOTE that it should be updated when share statuses will be transformed to upper case using constants from common place as it is done for share servers. \"","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"82dcab11615392fd0c5dcf5421d56c597552dead","unresolved":false,"context_lines":[{"line_number":743,"context_line":""},{"line_number":744,"context_line":"        if status not in valid_statuses:"},{"line_number":745,"context_line":"            msg_params \u003d {"},{"line_number":746,"context_line":"                \u0027valid_status\u0027: \" or \".join(valid_statuses),"},{"line_number":747,"context_line":"                \u0027share_id\u0027: share[\u0027id\u0027],"},{"line_number":748,"context_line":"                \u0027status\u0027: status,"},{"line_number":749,"context_line":"            }"}],"source_content_type":"text/x-python","patch_set":11,"id":"5afe65bd_9a7db8e9","line":746,"updated":"2015-06-03 17:09:26.000000000","message":"Don\u0027t use \" or \" like this.  It is not localizable.  Maybe you should just use a python style list.","commit_id":"d0523f88254bcfdd7636d930f66060e8abf6c960"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"7119a8955125d42765951f95187022c152b02547","unresolved":false,"context_lines":[{"line_number":743,"context_line":""},{"line_number":744,"context_line":"        if status not in valid_statuses:"},{"line_number":745,"context_line":"            msg_params \u003d {"},{"line_number":746,"context_line":"                \u0027valid_status\u0027: \" or \".join(valid_statuses),"},{"line_number":747,"context_line":"                \u0027share_id\u0027: share[\u0027id\u0027],"},{"line_number":748,"context_line":"                \u0027status\u0027: status,"},{"line_number":749,"context_line":"            }"}],"source_content_type":"text/x-python","patch_set":11,"id":"5afe65bd_8d720a48","line":746,"in_reply_to":"5afe65bd_9a7db8e9","updated":"2015-06-04 06:47:25.000000000","message":"Done","commit_id":"d0523f88254bcfdd7636d930f66060e8abf6c960"}],"manila/share/driver.py":[{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"c5ee0e6ecbdfbee531ed9acc5d5e9b5fcdaf3088","unresolved":false,"context_lines":[{"line_number":383,"context_line":"        raise ShareShrinkingPossibleDataLoss(share_id\u003dshare[\u0027id\u0027])"},{"line_number":384,"context_line":""},{"line_number":385,"context_line":"        :param share: Share model"},{"line_number":386,"context_line":"        :param new_size: New size of share (new_size \u003c share[\u0027size\u0027])"},{"line_number":387,"context_line":"        :param share_server: Optional -- Share server model"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"        :raises ShareShrinkingPossibleDataLoss, NotImplementedError"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_2a48fb86","line":386,"updated":"2015-05-26 15:41:44.000000000","message":"Mention GB?","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"}],"manila/share/manager.py":[{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"a74273d43058de3b1b50847efea303ab62a2cab0","unresolved":false,"context_lines":[{"line_number":863,"context_line":"            self.driver.shrink_share("},{"line_number":864,"context_line":"                share, new_size, share_server\u003dshare_server)"},{"line_number":865,"context_line":"        # NOTE(u_glide): Replace following except block by error notification"},{"line_number":866,"context_line":"        # when Manila will have such mechanism. It\u0027s possible because drivers"},{"line_number":867,"context_line":"        # shouldn\u0027t change share when this validation error occurs."},{"line_number":868,"context_line":"        except exception.ShareShrinkingPossibleDataLoss as e:"},{"line_number":869,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a016987_c0bf9fa8","line":866,"updated":"2015-05-19 11:45:15.000000000","message":"\"will\" should be removed. - \u003e\n\"\"\"... when Manila has such mechanism.\"\"\"","commit_id":"dd098902a5a3debf1d903635ed5e08ff69d04263"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"100c861dd5338e85af52044ac840e33a69fd2b91","unresolved":false,"context_lines":[{"line_number":863,"context_line":"            self.driver.shrink_share("},{"line_number":864,"context_line":"                share, new_size, share_server\u003dshare_server)"},{"line_number":865,"context_line":"        # NOTE(u_glide): Replace following except block by error notification"},{"line_number":866,"context_line":"        # when Manila will have such mechanism. It\u0027s possible because drivers"},{"line_number":867,"context_line":"        # shouldn\u0027t change share when this validation error occurs."},{"line_number":868,"context_line":"        except exception.ShareShrinkingPossibleDataLoss as e:"},{"line_number":869,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":4,"id":"7a016987_a927d5c8","line":866,"in_reply_to":"7a016987_c0bf9fa8","updated":"2015-05-20 14:17:08.000000000","message":"Done","commit_id":"dd098902a5a3debf1d903635ed5e08ff69d04263"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"a74273d43058de3b1b50847efea303ab62a2cab0","unresolved":false,"context_lines":[{"line_number":877,"context_line":"            try:"},{"line_number":878,"context_line":"                error_occurred(e, _LE(\"Shrink share failed.\"))"},{"line_number":879,"context_line":"            finally:"},{"line_number":880,"context_line":"                QUOTAS.rollback(context, reservations, project_id\u003dproject_id)"},{"line_number":881,"context_line":""},{"line_number":882,"context_line":"        QUOTAS.commit(context, reservations, project_id\u003dproject_id)"},{"line_number":883,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7a016987_80e407e1","line":880,"updated":"2015-05-19 11:45:15.000000000","message":"Lines 863 - 881 can be simplified. We have here two alike try blocks.","commit_id":"dd098902a5a3debf1d903635ed5e08ff69d04263"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"100c861dd5338e85af52044ac840e33a69fd2b91","unresolved":false,"context_lines":[{"line_number":877,"context_line":"            try:"},{"line_number":878,"context_line":"                error_occurred(e, _LE(\"Shrink share failed.\"))"},{"line_number":879,"context_line":"            finally:"},{"line_number":880,"context_line":"                QUOTAS.rollback(context, reservations, project_id\u003dproject_id)"},{"line_number":881,"context_line":""},{"line_number":882,"context_line":"        QUOTAS.commit(context, reservations, project_id\u003dproject_id)"},{"line_number":883,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7a016987_d4cce8bc","line":880,"in_reply_to":"7a016987_80e407e1","updated":"2015-05-20 14:17:08.000000000","message":"Done","commit_id":"dd098902a5a3debf1d903635ed5e08ff69d04263"},{"author":{"_account_id":11865,"name":"Clinton Knight","email":"cknight@netapp.com","username":"cknight"},"change_message_id":"51f8a88558acf7e4236557d8f754c4056ebc930d","unresolved":false,"context_lines":[{"line_number":91,"context_line":""},{"line_number":92,"context_line":"class ShareManager(manager.SchedulerDependentManager):"},{"line_number":93,"context_line":"    \"\"\"Manages NAS storages.\"\"\""},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    RPC_API_VERSION \u003d \u00271.1\u0027"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"    def __init__(self, share_driver\u003dNone, service_name\u003dNone, *args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_14bafd6e","line":94,"updated":"2015-05-26 19:39:36.000000000","message":"RPC_API_VERSION \u003d \u00271.2\u0027","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"61c9b5b171e20df83760a9e76b136d6e0195e584","unresolved":false,"context_lines":[{"line_number":91,"context_line":""},{"line_number":92,"context_line":"class ShareManager(manager.SchedulerDependentManager):"},{"line_number":93,"context_line":"    \"\"\"Manages NAS storages.\"\"\""},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"    RPC_API_VERSION \u003d \u00271.1\u0027"},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"    def __init__(self, share_driver\u003dNone, service_name\u003dNone, *args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_29d10cfc","line":94,"in_reply_to":"7a016987_14bafd6e","updated":"2015-05-27 09:53:50.000000000","message":"Done","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"4a117585e438645022cdc531ac7c3dcfab3ecde5","unresolved":false,"context_lines":[{"line_number":864,"context_line":"                share, new_size, share_server\u003dshare_server)"},{"line_number":865,"context_line":"        # NOTE(u_glide): Replace following except block by error notification"},{"line_number":866,"context_line":"        # when Manila has such mechanism. It\u0027s possible because drivers"},{"line_number":867,"context_line":"        # shouldn\u0027t change share when this validation error occurs."},{"line_number":868,"context_line":"        except Exception as e:"},{"line_number":869,"context_line":"            if isinstance(e, exception.ShareShrinkingPossibleDataLoss):"},{"line_number":870,"context_line":"                msg \u003d _LE(\"Shrink share failed due to possible data loss.\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_b5558afb","line":867,"updated":"2015-05-25 17:26:01.000000000","message":"change -\u003e shrink","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"61c9b5b171e20df83760a9e76b136d6e0195e584","unresolved":false,"context_lines":[{"line_number":864,"context_line":"                share, new_size, share_server\u003dshare_server)"},{"line_number":865,"context_line":"        # NOTE(u_glide): Replace following except block by error notification"},{"line_number":866,"context_line":"        # when Manila has such mechanism. It\u0027s possible because drivers"},{"line_number":867,"context_line":"        # shouldn\u0027t change share when this validation error occurs."},{"line_number":868,"context_line":"        except Exception as e:"},{"line_number":869,"context_line":"            if isinstance(e, exception.ShareShrinkingPossibleDataLoss):"},{"line_number":870,"context_line":"                msg \u003d _LE(\"Shrink share failed due to possible data loss.\")"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_a903bc75","line":867,"in_reply_to":"7a016987_b5558afb","updated":"2015-05-27 09:53:50.000000000","message":"Done","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"}],"manila/share/rpcapi.py":[{"author":{"_account_id":11865,"name":"Clinton Knight","email":"cknight@netapp.com","username":"cknight"},"change_message_id":"51f8a88558acf7e4236557d8f754c4056ebc930d","unresolved":false,"context_lines":[{"line_number":42,"context_line":"        super(ShareAPI, self).__init__()"},{"line_number":43,"context_line":"        target \u003d messaging.Target(topic\u003dCONF.share_topic,"},{"line_number":44,"context_line":"                                  version\u003dself.BASE_RPC_API_VERSION)"},{"line_number":45,"context_line":"        self.client \u003d rpc.get_client(target, version_cap\u003d\u00271.1\u0027)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def create_share(self, ctxt, share, host,"},{"line_number":48,"context_line":"                     request_spec, filter_properties,"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_14d55db8","line":45,"updated":"2015-05-26 19:39:36.000000000","message":"version_cap\u003d\u00271.2\u0027","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"61c9b5b171e20df83760a9e76b136d6e0195e584","unresolved":false,"context_lines":[{"line_number":42,"context_line":"        super(ShareAPI, self).__init__()"},{"line_number":43,"context_line":"        target \u003d messaging.Target(topic\u003dCONF.share_topic,"},{"line_number":44,"context_line":"                                  version\u003dself.BASE_RPC_API_VERSION)"},{"line_number":45,"context_line":"        self.client \u003d rpc.get_client(target, version_cap\u003d\u00271.1\u0027)"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"    def create_share(self, ctxt, share, host,"},{"line_number":48,"context_line":"                     request_spec, filter_properties,"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_69fdc46d","line":45,"in_reply_to":"7a016987_14d55db8","updated":"2015-05-27 09:53:50.000000000","message":"Done","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"}],"manila/tests/policy.json":[{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"c5ee0e6ecbdfbee531ed9acc5d5e9b5fcdaf3088","unresolved":false,"context_lines":[{"line_number":16,"context_line":"    \"share:get_snapshot\": \"\","},{"line_number":17,"context_line":"    \"share:get_all_snapshots\": \"\","},{"line_number":18,"context_line":"    \"share:shrink\": \"\","},{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    \"share_network:create\": \"\","},{"line_number":22,"context_line":"    \"share_network:index\": \"\","}],"source_content_type":"application/json","patch_set":5,"id":"7a016987_eafe6337","line":19,"updated":"2015-05-26 15:41:44.000000000","message":"Why do you need one more empty line here?","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"61c9b5b171e20df83760a9e76b136d6e0195e584","unresolved":false,"context_lines":[{"line_number":16,"context_line":"    \"share:get_snapshot\": \"\","},{"line_number":17,"context_line":"    \"share:get_all_snapshots\": \"\","},{"line_number":18,"context_line":"    \"share:shrink\": \"\","},{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"    \"share_network:create\": \"\","},{"line_number":22,"context_line":"    \"share_network:index\": \"\","}],"source_content_type":"application/json","patch_set":5,"id":"7a016987_29f8ec7b","line":19,"in_reply_to":"7a016987_eafe6337","updated":"2015-05-27 09:53:50.000000000","message":"Done","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"}],"manila/tests/share/test_manager.py":[{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"c5ee0e6ecbdfbee531ed9acc5d5e9b5fcdaf3088","unresolved":false,"context_lines":[{"line_number":1537,"context_line":"        )"},{"line_number":1538,"context_line":"        self.assertTrue(self.share_manager.db.share_update.called)"},{"line_number":1539,"context_line":""},{"line_number":1540,"context_line":"    @ddt.data({\u0027exc\u0027: Exception(\u0027fake\u0027),"},{"line_number":1541,"context_line":"               \u0027status\u0027: constants.STATUS_SHRINKING_ERROR},"},{"line_number":1542,"context_line":"              {\u0027exc\u0027: exception.ShareShrinkingPossibleDataLoss(\"fake\"),"},{"line_number":1543,"context_line":"               \u0027status\u0027: constants.STATUS_SHRINKING_POSSIBLE_DATA_LOSS_ERROR})"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_ad5e4510","line":1540,"updated":"2015-05-26 15:41:44.000000000","message":"Please, use custom exceptions. Usage of top-level exception can hide some bugs.","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"},{"author":{"_account_id":14232,"name":"Igor Malinovskiy","email":"u.glide@gmail.com","username":"imalinovskiy"},"change_message_id":"61c9b5b171e20df83760a9e76b136d6e0195e584","unresolved":false,"context_lines":[{"line_number":1537,"context_line":"        )"},{"line_number":1538,"context_line":"        self.assertTrue(self.share_manager.db.share_update.called)"},{"line_number":1539,"context_line":""},{"line_number":1540,"context_line":"    @ddt.data({\u0027exc\u0027: Exception(\u0027fake\u0027),"},{"line_number":1541,"context_line":"               \u0027status\u0027: constants.STATUS_SHRINKING_ERROR},"},{"line_number":1542,"context_line":"              {\u0027exc\u0027: exception.ShareShrinkingPossibleDataLoss(\"fake\"),"},{"line_number":1543,"context_line":"               \u0027status\u0027: constants.STATUS_SHRINKING_POSSIBLE_DATA_LOSS_ERROR})"}],"source_content_type":"text/x-python","patch_set":5,"id":"7a016987_093c102e","line":1540,"in_reply_to":"7a016987_ad5e4510","updated":"2015-05-27 09:53:50.000000000","message":"Done","commit_id":"95c7e31f0d2e07ab8661b2bb741f8de769aa9afd"}]}
