)]}'
{"cinder/volume/drivers/inspur/as13000/as13000_driver.py":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"ab6af0b74b266127c70a0d0c5ed22cb37ba638e0","unresolved":false,"context_lines":[{"line_number":32,"context_line":"from cinder import exception"},{"line_number":33,"context_line":"from cinder.i18n import _"},{"line_number":34,"context_line":"from cinder import interface"},{"line_number":35,"context_line":"from cinder import utils as utils"},{"line_number":36,"context_line":"from cinder.volume.drivers.san import san"},{"line_number":37,"context_line":"from cinder.volume import utils as volume_utils"},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_f82d548f","line":35,"range":{"start_line":35,"start_character":25,"end_line":35,"end_character":33},"updated":"2018-09-13 19:19:43.000000000","message":"redundant?","commit_id":"1c6dce6acbaaae7dce310994de9d104e8d7bc92e"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"ab6af0b74b266127c70a0d0c5ed22cb37ba638e0","unresolved":false,"context_lines":[{"line_number":413,"context_line":"            LOG.error(msg)"},{"line_number":414,"context_line":"            raise exception.VolumeDriverException(message\u003dmsg)"},{"line_number":415,"context_line":""},{"line_number":416,"context_line":"        size \u003d int(new_size) * units.Ki"},{"line_number":417,"context_line":"        pool \u003d volume_utils.extract_host(volume.host, level\u003d\u0027pool\u0027)"},{"line_number":418,"context_line":""},{"line_number":419,"context_line":"        method \u003d \u0027block/lvm\u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_186a901a","line":416,"range":{"start_line":416,"start_character":15,"end_line":416,"end_character":28},"updated":"2018-09-13 19:19:43.000000000","message":"can the new_size be passed as any other type than int?","commit_id":"1c6dce6acbaaae7dce310994de9d104e8d7bc92e"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"ab6af0b74b266127c70a0d0c5ed22cb37ba638e0","unresolved":false,"context_lines":[{"line_number":881,"context_line":"            capacity \u003d capacity / units.Mi"},{"line_number":882,"context_line":"        elif unit_of_used in [\u0027M\u0027, \u0027MB\u0027]:"},{"line_number":883,"context_line":"            capacity \u003d capacity / units.Ki"},{"line_number":884,"context_line":"        elif unit_of_used in [\u0027G\u0027, \u0027GB\u0027]:"},{"line_number":885,"context_line":"            capacity \u003d capacity"},{"line_number":886,"context_line":"        elif unit_of_used in [\u0027T\u0027, \u0027TB\u0027]:"},{"line_number":887,"context_line":"            capacity \u003d capacity * units.Ki"},{"line_number":888,"context_line":"        elif unit_of_used in [\u0027E\u0027, \u0027EB\u0027]:"}],"source_content_type":"text/x-python","patch_set":1,"id":"3f79a3b5_0b255c0a","line":885,"range":{"start_line":884,"start_character":8,"end_line":885,"end_character":31},"updated":"2018-09-13 19:19:43.000000000","message":"this seems like redundant and can be removed.","commit_id":"1c6dce6acbaaae7dce310994de9d104e8d7bc92e"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"5738978c521def39a2002bdb6356ceb24f2ba6b4","unresolved":false,"context_lines":[{"line_number":276,"context_line":"                raise exception.InvalidInput(reason\u003dmsg)"},{"line_number":277,"context_line":""},{"line_number":278,"context_line":"        # make sure at least one node can"},{"line_number":279,"context_line":"        if len(self.nodes) \u003d\u003d 0:"},{"line_number":280,"context_line":"            msg \u003d _(\u0027No healthy Node are available !\u0027)"},{"line_number":281,"context_line":"            LOG.error(msg)"},{"line_number":282,"context_line":"            raise exception.VolumeDriverException(message\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f79a3b5_83c36f39","line":279,"updated":"2018-09-28 10:46:03.000000000","message":"nit: could be simplified to:\nif not self.nodes","commit_id":"b1c57c2dc9a37dd9693c44152e0f69732af8ea30"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"5738978c521def39a2002bdb6356ceb24f2ba6b4","unresolved":false,"context_lines":[{"line_number":283,"context_line":""},{"line_number":284,"context_line":"    def _check_pools(self):"},{"line_number":285,"context_line":"        \"\"\"Check the pool in conf exist in the AS13000\"\"\""},{"line_number":286,"context_line":"        for pool in self.pools:"},{"line_number":287,"context_line":"            if pool not in self.pools_info:"},{"line_number":288,"context_line":"                msg \u003d _(\u0027Pool %s is not exist.\u0027) % pool"},{"line_number":289,"context_line":"                LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f79a3b5_c30de78f","line":286,"updated":"2018-09-28 10:46:03.000000000","message":"The complexity of this code it too high. Please, simplify it to something like:\nif not set(self.pools).issubset(self.pools_info):\n    pools \u003dset(self.pools)-set(self.pools_ingo)\n    msg \u003d _(\u0027Pools %s are not exist.\u0027) % pools","commit_id":"b1c57c2dc9a37dd9693c44152e0f69732af8ea30"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"5738978c521def39a2002bdb6356ceb24f2ba6b4","unresolved":false,"context_lines":[{"line_number":510,"context_line":"    def _update_volume_stats(self):"},{"line_number":511,"context_line":"        \"\"\"update the backend stats including driver info and pools info\"\"\""},{"line_number":512,"context_line":""},{"line_number":513,"context_line":"        # Driver excute this method every minute, so we set this when the"},{"line_number":514,"context_line":"        # _update_volume_stats excute for times ,the driver will refresh"},{"line_number":515,"context_line":"        # the token"},{"line_number":516,"context_line":"        time_difference \u003d time.time() - self._token_time"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f79a3b5_c382c7c7","line":513,"range":{"start_line":513,"start_character":17,"end_line":513,"end_character":23},"updated":"2018-09-28 10:46:03.000000000","message":"excute \u003d\u003e execute","commit_id":"b1c57c2dc9a37dd9693c44152e0f69732af8ea30"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"5738978c521def39a2002bdb6356ceb24f2ba6b4","unresolved":false,"context_lines":[{"line_number":728,"context_line":"        method \u003d \u0027block/target\u0027"},{"line_number":729,"context_line":"        request_type \u003d \u0027post\u0027"},{"line_number":730,"context_line":"        params \u003d {\u0027name\u0027: target_name, \u0027nodeName\u0027: target_node}"},{"line_number":731,"context_line":"        self._rest.send_rest_api(method\u003dmethod,"},{"line_number":732,"context_line":"                                 params\u003dparams,"},{"line_number":733,"context_line":"                                 request_type\u003drequest_type)"},{"line_number":734,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"3f79a3b5_23e13b9c","line":731,"updated":"2018-09-28 10:46:03.000000000","message":"Please, add logging here. It\u0027s very useful to have both create/delete  records in logs","commit_id":"b1c57c2dc9a37dd9693c44152e0f69732af8ea30"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"5738978c521def39a2002bdb6356ceb24f2ba6b4","unresolved":false,"context_lines":[{"line_number":803,"context_line":"        \"\"\"get all lun list of the target\"\"\""},{"line_number":804,"context_line":"        method \u003d \u0027block/lun?name\u003d%s\u0027 % target_name"},{"line_number":805,"context_line":"        request_type \u003d \u0027get\u0027"},{"line_number":806,"context_line":"        lun_list \u003d self._rest.send_rest_api(method\u003dmethod,"},{"line_number":807,"context_line":"                                            request_type\u003drequest_type)"},{"line_number":808,"context_line":"        return lun_list"},{"line_number":809,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"3f79a3b5_c3e9677f","line":806,"updated":"2018-09-28 10:46:03.000000000","message":"nit: we don\u0027t need lun_list variable here","commit_id":"b1c57c2dc9a37dd9693c44152e0f69732af8ea30"}]}
