)]}'
{"cinder/volume/drivers/ibm/ibm_storage/ds8k_proxy.py":[{"author":{"_account_id":14532,"name":"Gerald McBrearty","email":"gfm@us.ibm.com","username":"gfm"},"change_message_id":"4c7f02a7e978afceb880c49ee9f23777ec3c83ac","unresolved":false,"context_lines":[{"line_number":1193,"context_line":"        return None, add_volumes_update, remove_volumes_update"},{"line_number":1194,"context_line":""},{"line_number":1195,"context_line":"    @proxy.logger"},{"line_number":1196,"context_line":"    def _add_volumes_into_consisgroup(self, grp, add_volumes):"},{"line_number":1197,"context_line":"        add_volumes_update \u003d []"},{"line_number":1198,"context_line":"        for vol in add_volumes:"},{"line_number":1199,"context_line":"            if vol.status \u003d\u003d \u0027in-use\u0027:"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f96bb07_1f3cc7c6","line":1196,"updated":"2018-01-12 16:25:55.000000000","message":"Does this method need the same lock as remove?","commit_id":"7ca6005d4714f2f322daf8f3858032f3f8758d9c"},{"author":{"_account_id":26422,"name":"Peng Wang","email":"wangpww@cn.ibm.com","username":"wangpeng"},"change_message_id":"e9e4d81b5fe780bd899e3e94833ef486434e0b4a","unresolved":false,"context_lines":[{"line_number":1193,"context_line":"        return None, add_volumes_update, remove_volumes_update"},{"line_number":1194,"context_line":""},{"line_number":1195,"context_line":"    @proxy.logger"},{"line_number":1196,"context_line":"    def _add_volumes_into_consisgroup(self, grp, add_volumes):"},{"line_number":1197,"context_line":"        add_volumes_update \u003d []"},{"line_number":1198,"context_line":"        for vol in add_volumes:"},{"line_number":1199,"context_line":"            if vol.status \u003d\u003d \u0027in-use\u0027:"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f96bb07_ff40e237","line":1196,"in_reply_to":"7f96bb07_1f3cc7c6","updated":"2018-01-15 02:23:26.000000000","message":"For _remove_volume method, drivier need to update the cache for the consistency group, but _add_volume doesn\u0027t need to update the cache, so this method doesn\u0027t need to add the lock","commit_id":"7ca6005d4714f2f322daf8f3858032f3f8758d9c"},{"author":{"_account_id":14532,"name":"Gerald McBrearty","email":"gfm@us.ibm.com","username":"gfm"},"change_message_id":"4c7f02a7e978afceb880c49ee9f23777ec3c83ac","unresolved":false,"context_lines":[{"line_number":1196,"context_line":"    def _add_volumes_into_consisgroup(self, grp, add_volumes):"},{"line_number":1197,"context_line":"        add_volumes_update \u003d []"},{"line_number":1198,"context_line":"        for vol in add_volumes:"},{"line_number":1199,"context_line":"            if vol.status \u003d\u003d \u0027in-use\u0027:"},{"line_number":1200,"context_line":"                msg \u003d (_(\"add volume %(vol)s into group %(grp)s failed \""},{"line_number":1201,"context_line":"                         \"since this volume is \u0027in-use\u0027 status\")"},{"line_number":1202,"context_line":"                       % {\u0027vol\u0027: vol.id, \u0027grp\u0027: grp.id})"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f96bb07_fc02490b","line":1199,"updated":"2018-01-12 16:25:55.000000000","message":"I think this check should be \"vol.status !\u003d \u0027available\u0027\" instead. couldn\u0027t a volume in the \u0027attaching\u0027 or \u0027detaching\u0027 state be a problem?","commit_id":"7ca6005d4714f2f322daf8f3858032f3f8758d9c"},{"author":{"_account_id":26422,"name":"Peng Wang","email":"wangpww@cn.ibm.com","username":"wangpeng"},"change_message_id":"e9e4d81b5fe780bd899e3e94833ef486434e0b4a","unresolved":false,"context_lines":[{"line_number":1196,"context_line":"    def _add_volumes_into_consisgroup(self, grp, add_volumes):"},{"line_number":1197,"context_line":"        add_volumes_update \u003d []"},{"line_number":1198,"context_line":"        for vol in add_volumes:"},{"line_number":1199,"context_line":"            if vol.status \u003d\u003d \u0027in-use\u0027:"},{"line_number":1200,"context_line":"                msg \u003d (_(\"add volume %(vol)s into group %(grp)s failed \""},{"line_number":1201,"context_line":"                         \"since this volume is \u0027in-use\u0027 status\")"},{"line_number":1202,"context_line":"                       % {\u0027vol\u0027: vol.id, \u0027grp\u0027: grp.id})"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f96bb07_ff69c2bd","line":1199,"in_reply_to":"7f96bb07_fc02490b","updated":"2018-01-15 02:23:26.000000000","message":"in cinder/volume/manager.py, just volume.status in VALID_ADD_VOL_TO_GROUP_STATUS \u003d (\u0027available\u0027, \u0027in-use\u0027) can be added into consistency group. So only vol.status \u003d\u003d \u0027in-use\u0027 is ok","commit_id":"7ca6005d4714f2f322daf8f3858032f3f8758d9c"},{"author":{"_account_id":14532,"name":"Gerald McBrearty","email":"gfm@us.ibm.com","username":"gfm"},"change_message_id":"4c7f02a7e978afceb880c49ee9f23777ec3c83ac","unresolved":false,"context_lines":[{"line_number":1216,"context_line":"                                         remove_volumes):"},{"line_number":1217,"context_line":"        remove_volumes_update \u003d []"},{"line_number":1218,"context_line":"        for vol in remove_volumes:"},{"line_number":1219,"context_line":"            if vol.status \u003d\u003d \u0027in-use\u0027:"},{"line_number":1220,"context_line":"                msg \u003d (_(\"remove volume %(vol)s from group %(grp)s failed \""},{"line_number":1221,"context_line":"                         \"since this volume is \u0027in-use\u0027 status\")"},{"line_number":1222,"context_line":"                       % {\u0027vol\u0027: vol.id, \u0027grp\u0027: grp.id})"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f96bb07_bf50330c","line":1219,"updated":"2018-01-12 16:25:55.000000000","message":"Same comment.","commit_id":"7ca6005d4714f2f322daf8f3858032f3f8758d9c"},{"author":{"_account_id":26422,"name":"Peng Wang","email":"wangpww@cn.ibm.com","username":"wangpeng"},"change_message_id":"e9e4d81b5fe780bd899e3e94833ef486434e0b4a","unresolved":false,"context_lines":[{"line_number":1216,"context_line":"                                         remove_volumes):"},{"line_number":1217,"context_line":"        remove_volumes_update \u003d []"},{"line_number":1218,"context_line":"        for vol in remove_volumes:"},{"line_number":1219,"context_line":"            if vol.status \u003d\u003d \u0027in-use\u0027:"},{"line_number":1220,"context_line":"                msg \u003d (_(\"remove volume %(vol)s from group %(grp)s failed \""},{"line_number":1221,"context_line":"                         \"since this volume is \u0027in-use\u0027 status\")"},{"line_number":1222,"context_line":"                       % {\u0027vol\u0027: vol.id, \u0027grp\u0027: grp.id})"}],"source_content_type":"text/x-python","patch_set":1,"id":"7f96bb07_9f3afe95","line":1219,"in_reply_to":"7f96bb07_bf50330c","updated":"2018-01-15 02:23:26.000000000","message":"Like the add volume method, just vol.status in VALID_REMOVE_VOL_FROM_GROUP_STATUS \u003d (\n    \u0027available\u0027,\n    \u0027in-use\u0027,\n    \u0027error\u0027,\n    \u0027error_deleting\u0027) can be added into consistency group. But in DS8k driver, remove a volume from cg will clone it firstly and then delete this volume but DS8k doesn\u0027t allow to delete a attached volume so only vol.status\u003d\u003d\u0027in-use\u0027 is ok.","commit_id":"7ca6005d4714f2f322daf8f3858032f3f8758d9c"}]}
