)]}'
{"cinder/volume/drivers/huawei/huawei_driver.py":[{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"37b689f1f37146fc463dee988ebad3041e4b57df","unresolved":false,"context_lines":[{"line_number":888,"context_line":"        snapshot_id \u003d self._create_snapshot_base(snapshot)"},{"line_number":889,"context_line":"        try:"},{"line_number":890,"context_line":"            self.client.activate_snapshot(snapshot_id)"},{"line_number":891,"context_line":"        except Exception:"},{"line_number":892,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":893,"context_line":"                LOG.error(\"Active snapshot %s failed, now deleting it.\","},{"line_number":894,"context_line":"                          snapshot_id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_e01e766e","line":891,"updated":"2018-04-13 22:24:00.000000000","message":"Can we catch less generic exception here?","commit_id":"23ebe7525eeec3f2e4d1a1bb96637e480f8cbbe2"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"3f1b7174d299bf0d61dcc0e88094b6aceb53b1be","unresolved":false,"context_lines":[{"line_number":888,"context_line":"        snapshot_id \u003d self._create_snapshot_base(snapshot)"},{"line_number":889,"context_line":"        try:"},{"line_number":890,"context_line":"            self.client.activate_snapshot(snapshot_id)"},{"line_number":891,"context_line":"        except Exception:"},{"line_number":892,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":893,"context_line":"                LOG.error(\"Active snapshot %s failed, now deleting it.\","},{"line_number":894,"context_line":"                          snapshot_id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_90550ec9","line":891,"in_reply_to":"bf659307_e01e766e","updated":"2018-05-09 07:26:33.000000000","message":"Here we must make sure the created snapshot cleared while activating failed, no matter what reasons.","commit_id":"23ebe7525eeec3f2e4d1a1bb96637e480f8cbbe2"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"37b689f1f37146fc463dee988ebad3041e4b57df","unresolved":false,"context_lines":[{"line_number":1604,"context_line":""},{"line_number":1605,"context_line":"    def _get_group_type_value(self, opts, vol_type):"},{"line_number":1606,"context_line":"        if not opts:"},{"line_number":1607,"context_line":"            return None"},{"line_number":1608,"context_line":""},{"line_number":1609,"context_line":"        for opt in opts:"},{"line_number":1610,"context_line":"            if vol_type in opt:"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_a014fe4d","line":1607,"updated":"2018-04-13 22:24:00.000000000","message":"nit: we can omit None here. It\u0027s enough to have only \u0027return\u0027","commit_id":"23ebe7525eeec3f2e4d1a1bb96637e480f8cbbe2"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"3f1b7174d299bf0d61dcc0e88094b6aceb53b1be","unresolved":false,"context_lines":[{"line_number":1604,"context_line":""},{"line_number":1605,"context_line":"    def _get_group_type_value(self, opts, vol_type):"},{"line_number":1606,"context_line":"        if not opts:"},{"line_number":1607,"context_line":"            return None"},{"line_number":1608,"context_line":""},{"line_number":1609,"context_line":"        for opt in opts:"},{"line_number":1610,"context_line":"            if vol_type in opt:"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_5061b6a8","line":1607,"in_reply_to":"bf659307_a014fe4d","updated":"2018-05-09 07:26:33.000000000","message":"Done","commit_id":"23ebe7525eeec3f2e4d1a1bb96637e480f8cbbe2"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"37b689f1f37146fc463dee988ebad3041e4b57df","unresolved":false,"context_lines":[{"line_number":1695,"context_line":"            volume_model_update \u003d {\u0027id\u0027: volume.id}"},{"line_number":1696,"context_line":"            try:"},{"line_number":1697,"context_line":"                self.delete_volume(volume)"},{"line_number":1698,"context_line":"            except Exception:"},{"line_number":1699,"context_line":"                LOG.exception(\u0027Delete volume %s failed.\u0027, volume)"},{"line_number":1700,"context_line":"                volume_model_update.update({\u0027status\u0027: \u0027error_deleting\u0027})"},{"line_number":1701,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_7b06971e","line":1698,"updated":"2018-04-13 22:24:00.000000000","message":"Can we catch less general exception here?","commit_id":"23ebe7525eeec3f2e4d1a1bb96637e480f8cbbe2"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"3f1b7174d299bf0d61dcc0e88094b6aceb53b1be","unresolved":false,"context_lines":[{"line_number":1695,"context_line":"            volume_model_update \u003d {\u0027id\u0027: volume.id}"},{"line_number":1696,"context_line":"            try:"},{"line_number":1697,"context_line":"                self.delete_volume(volume)"},{"line_number":1698,"context_line":"            except Exception:"},{"line_number":1699,"context_line":"                LOG.exception(\u0027Delete volume %s failed.\u0027, volume)"},{"line_number":1700,"context_line":"                volume_model_update.update({\u0027status\u0027: \u0027error_deleting\u0027})"},{"line_number":1701,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_3013da0f","line":1698,"in_reply_to":"bf659307_7b06971e","updated":"2018-05-09 07:26:33.000000000","message":"No matter what exceptions cause volume deletion failed, must specify the \"error_deleting\" status, so here should be a general exception.","commit_id":"23ebe7525eeec3f2e4d1a1bb96637e480f8cbbe2"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"37b689f1f37146fc463dee988ebad3041e4b57df","unresolved":false,"context_lines":[{"line_number":1725,"context_line":"            try:"},{"line_number":1726,"context_line":"                self._check_volume_exist_on_array("},{"line_number":1727,"context_line":"                    volume, constants.VOLUME_NOT_EXISTS_RAISE)"},{"line_number":1728,"context_line":"            except Exception as err:"},{"line_number":1729,"context_line":"                raise exception.VolumeDriverException(message\u003derr)"},{"line_number":1730,"context_line":""},{"line_number":1731,"context_line":"        return model_update, None, None"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_3b149f43","line":1728,"updated":"2018-04-13 22:24:00.000000000","message":"The same as above","commit_id":"23ebe7525eeec3f2e4d1a1bb96637e480f8cbbe2"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"3f1b7174d299bf0d61dcc0e88094b6aceb53b1be","unresolved":false,"context_lines":[{"line_number":1725,"context_line":"            try:"},{"line_number":1726,"context_line":"                self._check_volume_exist_on_array("},{"line_number":1727,"context_line":"                    volume, constants.VOLUME_NOT_EXISTS_RAISE)"},{"line_number":1728,"context_line":"            except Exception as err:"},{"line_number":1729,"context_line":"                raise exception.VolumeDriverException(message\u003derr)"},{"line_number":1730,"context_line":""},{"line_number":1731,"context_line":"        return model_update, None, None"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_b0fe0aac","line":1728,"in_reply_to":"bf659307_3b149f43","updated":"2018-05-09 07:26:33.000000000","message":"Done. Remove this redundant exception catching logic.","commit_id":"23ebe7525eeec3f2e4d1a1bb96637e480f8cbbe2"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"37b689f1f37146fc463dee988ebad3041e4b57df","unresolved":false,"context_lines":[{"line_number":1740,"context_line":""},{"line_number":1741,"context_line":"        try:"},{"line_number":1742,"context_line":"            snapshots_model_update \u003d self._create_group_snapshot(snapshots)"},{"line_number":1743,"context_line":"        except Exception:"},{"line_number":1744,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":1745,"context_line":"                LOG.error(\"Create group snapshots failed. \""},{"line_number":1746,"context_line":"                          \"Group snapshot id: %s.\", group_snapshot.id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_fb194779","line":1743,"updated":"2018-04-13 22:24:00.000000000","message":"The same as above","commit_id":"23ebe7525eeec3f2e4d1a1bb96637e480f8cbbe2"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"3f1b7174d299bf0d61dcc0e88094b6aceb53b1be","unresolved":false,"context_lines":[{"line_number":1740,"context_line":""},{"line_number":1741,"context_line":"        try:"},{"line_number":1742,"context_line":"            snapshots_model_update \u003d self._create_group_snapshot(snapshots)"},{"line_number":1743,"context_line":"        except Exception:"},{"line_number":1744,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":1745,"context_line":"                LOG.error(\"Create group snapshots failed. \""},{"line_number":1746,"context_line":"                          \"Group snapshot id: %s.\", group_snapshot.id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_50d45620","line":1743,"in_reply_to":"bf659307_fb194779","updated":"2018-05-09 07:26:33.000000000","message":"Done. Remove this redundant exception catching logic.","commit_id":"23ebe7525eeec3f2e4d1a1bb96637e480f8cbbe2"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"055b9bb6a04f41326a729f6c092bc2003db32d88","unresolved":false,"context_lines":[{"line_number":1620,"context_line":""},{"line_number":1621,"context_line":"        if self._check_group_type_support(opts, \u0027hypermetro\u0027):"},{"line_number":1622,"context_line":"            if not self.check_func_support(\"HyperMetro_ConsistentGroup\"):"},{"line_number":1623,"context_line":"                msg \u003d _(\"Can\u0027t create consistency group, array not \""},{"line_number":1624,"context_line":"                        \"support hypermetro consistentgroup, \""},{"line_number":1625,"context_line":"                        \"group id: %(group_id)s.\""},{"line_number":1626,"context_line":"                        ) % {\"group_id\": group.id}"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_09cf5d56","line":1623,"range":{"start_line":1623,"start_character":63,"end_line":1623,"end_character":66},"updated":"2018-05-11 13:34:28.000000000","message":"does not","commit_id":"7a5804f0d0036846fa9af3176abf3a87ed273a3b"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"6a1ba8963926f644c0fe21b8b8856fa9ce12fc6d","unresolved":false,"context_lines":[{"line_number":1620,"context_line":""},{"line_number":1621,"context_line":"        if self._check_group_type_support(opts, \u0027hypermetro\u0027):"},{"line_number":1622,"context_line":"            if not self.check_func_support(\"HyperMetro_ConsistentGroup\"):"},{"line_number":1623,"context_line":"                msg \u003d _(\"Can\u0027t create consistency group, array not \""},{"line_number":1624,"context_line":"                        \"support hypermetro consistentgroup, \""},{"line_number":1625,"context_line":"                        \"group id: %(group_id)s.\""},{"line_number":1626,"context_line":"                        ) % {\"group_id\": group.id}"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_dcdd9870","line":1623,"range":{"start_line":1623,"start_character":63,"end_line":1623,"end_character":66},"in_reply_to":"5f7c97a3_09cf5d56","updated":"2018-05-12 07:22:11.000000000","message":"Done. Thanks Sean.\nAnd I reverted the test file reformat from last patch, please have a check. Thanks.","commit_id":"7a5804f0d0036846fa9af3176abf3a87ed273a3b"}]}
