)]}'
{"manila/share/drivers/huawei/constants.py":[{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"cd206aed7c35e683934d6ec4d48727d0091b9f68","unresolved":false,"context_lines":[{"line_number":21,"context_line":"STATUS_EXIT_DOMAIN \u003d \u00270\u0027"},{"line_number":22,"context_line":"STATUS_SERVICE_RUNNING \u003d \"2\""},{"line_number":23,"context_line":"STATUS_QOS_ACTIVE \u003d \u00272\u0027"},{"line_number":24,"context_line":"STATUS_QOS_INACTIVATED \u003d \u002745\u0027"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"DEFAULT_WAIT_INTERVAL \u003d 3"},{"line_number":27,"context_line":"DEFAULT_TIMEOUT \u003d 60"}],"source_content_type":"text/x-python","patch_set":3,"id":"7a8ec9b2_68a2effd","line":24,"range":{"start_line":24,"start_character":11,"end_line":24,"end_character":22},"updated":"2016-09-21 11:33:43.000000000","message":"STATUS_QOS_WAITING","commit_id":"1763680f6ceae1712ba8da84e8ad24dc4218eac3"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"56e0843723971b39c52ea0ede62b77c8b69bc326","unresolved":false,"context_lines":[{"line_number":21,"context_line":"STATUS_EXIT_DOMAIN \u003d \u00270\u0027"},{"line_number":22,"context_line":"STATUS_SERVICE_RUNNING \u003d \"2\""},{"line_number":23,"context_line":"STATUS_QOS_ACTIVE \u003d \u00272\u0027"},{"line_number":24,"context_line":"STATUS_QOS_INACTIVATED \u003d \u002745\u0027"},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"DEFAULT_WAIT_INTERVAL \u003d 3"},{"line_number":27,"context_line":"DEFAULT_TIMEOUT \u003d 60"}],"source_content_type":"text/x-python","patch_set":3,"id":"7a8ec9b2_55a11c45","line":24,"range":{"start_line":24,"start_character":11,"end_line":24,"end_character":22},"in_reply_to":"7a8ec9b2_68a2effd","updated":"2016-09-22 03:09:26.000000000","message":"Done","commit_id":"1763680f6ceae1712ba8da84e8ad24dc4218eac3"}],"manila/tests/share/drivers/huawei/test_huawei_nas.py":[{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"815c64480088e4d2d24be9d2b565158bce9f736d","unresolved":false,"context_lines":[{"line_number":4525,"context_line":""},{"line_number":4526,"context_line":"    @ddt.data(\u00272\u0027, \u002745\u0027, \u002746\u0027)"},{"line_number":4527,"context_line":"    def test_delete_qos(self, qos_status):"},{"line_number":4528,"context_line":"        self.driver.plugin.helper.custom_results["},{"line_number":4529,"context_line":"            \u0027/ioclass/11\u0027] \u003d {"},{"line_number":4530,"context_line":"            \"GET\": \"\"\"{\"error\":{\"code\":0},"},{"line_number":4531,"context_line":"                    \"data\":{\"RUNNINGSTATUS\": \"%s\"}}\"\"\" % qos_status}"},{"line_number":4532,"context_line":""},{"line_number":4533,"context_line":"        mocker \u003d self.mock_object(self.driver.plugin.helper,"},{"line_number":4534,"context_line":"                                  \u0027activate_deactivate_qos\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_53061c21","line":4531,"range":{"start_line":4528,"start_character":8,"end_line":4531,"end_character":68},"updated":"2016-09-20 08:15:12.000000000","message":"self.driver.plugin.helper.custom_results[\u0027/ioclass/11\u0027] \u003d {\n    \"GET\": \"\"\"{\"error\":{\"code\":0}, \"data\":{\"RUNNINGSTATUS\": \"%s\"}}\"\"\" %\n    qos_status\n}","commit_id":"3a84a669556d919085934823fb318a40f5450cee"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"bc4c3689fdc45458f991161db996784f35cb14fb","unresolved":false,"context_lines":[{"line_number":4525,"context_line":""},{"line_number":4526,"context_line":"    @ddt.data(\u00272\u0027, \u002745\u0027, \u002746\u0027)"},{"line_number":4527,"context_line":"    def test_delete_qos(self, qos_status):"},{"line_number":4528,"context_line":"        self.driver.plugin.helper.custom_results["},{"line_number":4529,"context_line":"            \u0027/ioclass/11\u0027] \u003d {"},{"line_number":4530,"context_line":"            \"GET\": \"\"\"{\"error\":{\"code\":0},"},{"line_number":4531,"context_line":"                    \"data\":{\"RUNNINGSTATUS\": \"%s\"}}\"\"\" % qos_status}"},{"line_number":4532,"context_line":""},{"line_number":4533,"context_line":"        mocker \u003d self.mock_object(self.driver.plugin.helper,"},{"line_number":4534,"context_line":"                                  \u0027activate_deactivate_qos\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_0dcb8873","line":4531,"range":{"start_line":4528,"start_character":8,"end_line":4531,"end_character":68},"in_reply_to":"7a8ec9b2_53061c21","updated":"2016-09-20 10:06:30.000000000","message":"Done","commit_id":"3a84a669556d919085934823fb318a40f5450cee"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"815c64480088e4d2d24be9d2b565158bce9f736d","unresolved":false,"context_lines":[{"line_number":4530,"context_line":"            \"GET\": \"\"\"{\"error\":{\"code\":0},"},{"line_number":4531,"context_line":"                    \"data\":{\"RUNNINGSTATUS\": \"%s\"}}\"\"\" % qos_status}"},{"line_number":4532,"context_line":""},{"line_number":4533,"context_line":"        mocker \u003d self.mock_object(self.driver.plugin.helper,"},{"line_number":4534,"context_line":"                                  \u0027activate_deactivate_qos\u0027,"},{"line_number":4535,"context_line":"                                  mock.Mock())"},{"line_number":4536,"context_line":"        del_mocker \u003d self.mock_object(self.driver.plugin.helper,"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_d3b5cc7e","line":4533,"range":{"start_line":4533,"start_character":8,"end_line":4533,"end_character":14},"updated":"2016-09-20 08:15:12.000000000","message":"\"mocker\" is wrong naming here, it is very ambiguous here.\nBetter to call it something like \"activate_deactivate_qos_mock\".","commit_id":"3a84a669556d919085934823fb318a40f5450cee"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"bc4c3689fdc45458f991161db996784f35cb14fb","unresolved":false,"context_lines":[{"line_number":4530,"context_line":"            \"GET\": \"\"\"{\"error\":{\"code\":0},"},{"line_number":4531,"context_line":"                    \"data\":{\"RUNNINGSTATUS\": \"%s\"}}\"\"\" % qos_status}"},{"line_number":4532,"context_line":""},{"line_number":4533,"context_line":"        mocker \u003d self.mock_object(self.driver.plugin.helper,"},{"line_number":4534,"context_line":"                                  \u0027activate_deactivate_qos\u0027,"},{"line_number":4535,"context_line":"                                  mock.Mock())"},{"line_number":4536,"context_line":"        del_mocker \u003d self.mock_object(self.driver.plugin.helper,"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_4dc59059","line":4533,"range":{"start_line":4533,"start_character":8,"end_line":4533,"end_character":14},"in_reply_to":"7a8ec9b2_d3b5cc7e","updated":"2016-09-20 10:06:30.000000000","message":"Done","commit_id":"3a84a669556d919085934823fb318a40f5450cee"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"815c64480088e4d2d24be9d2b565158bce9f736d","unresolved":false,"context_lines":[{"line_number":4532,"context_line":""},{"line_number":4533,"context_line":"        mocker \u003d self.mock_object(self.driver.plugin.helper,"},{"line_number":4534,"context_line":"                                  \u0027activate_deactivate_qos\u0027,"},{"line_number":4535,"context_line":"                                  mock.Mock())"},{"line_number":4536,"context_line":"        del_mocker \u003d self.mock_object(self.driver.plugin.helper,"},{"line_number":4537,"context_line":"                                      \u0027delete_qos_policy\u0027,"},{"line_number":4538,"context_line":"                                      mock.Mock())"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_d36cec0a","line":4535,"range":{"start_line":4535,"start_character":34,"end_line":4535,"end_character":45},"updated":"2016-09-20 08:15:12.000000000","message":"And this is default one, no need to specify it explicitly.","commit_id":"3a84a669556d919085934823fb318a40f5450cee"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"bc4c3689fdc45458f991161db996784f35cb14fb","unresolved":false,"context_lines":[{"line_number":4532,"context_line":""},{"line_number":4533,"context_line":"        mocker \u003d self.mock_object(self.driver.plugin.helper,"},{"line_number":4534,"context_line":"                                  \u0027activate_deactivate_qos\u0027,"},{"line_number":4535,"context_line":"                                  mock.Mock())"},{"line_number":4536,"context_line":"        del_mocker \u003d self.mock_object(self.driver.plugin.helper,"},{"line_number":4537,"context_line":"                                      \u0027delete_qos_policy\u0027,"},{"line_number":4538,"context_line":"                                      mock.Mock())"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_adaa9483","line":4535,"range":{"start_line":4535,"start_character":34,"end_line":4535,"end_character":45},"in_reply_to":"7a8ec9b2_d36cec0a","updated":"2016-09-20 10:06:30.000000000","message":"Done","commit_id":"3a84a669556d919085934823fb318a40f5450cee"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"815c64480088e4d2d24be9d2b565158bce9f736d","unresolved":false,"context_lines":[{"line_number":4535,"context_line":"                                  mock.Mock())"},{"line_number":4536,"context_line":"        del_mocker \u003d self.mock_object(self.driver.plugin.helper,"},{"line_number":4537,"context_line":"                                      \u0027delete_qos_policy\u0027,"},{"line_number":4538,"context_line":"                                      mock.Mock())"},{"line_number":4539,"context_line":""},{"line_number":4540,"context_line":"        qos \u003d smartx.SmartQos(self.driver.plugin.helper)"},{"line_number":4541,"context_line":"        qos.delete_qos(\u002711\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_f371e8e1","line":4538,"range":{"start_line":4538,"start_character":38,"end_line":4538,"end_character":49},"updated":"2016-09-20 08:15:12.000000000","message":"same here.","commit_id":"3a84a669556d919085934823fb318a40f5450cee"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"bc4c3689fdc45458f991161db996784f35cb14fb","unresolved":false,"context_lines":[{"line_number":4535,"context_line":"                                  mock.Mock())"},{"line_number":4536,"context_line":"        del_mocker \u003d self.mock_object(self.driver.plugin.helper,"},{"line_number":4537,"context_line":"                                      \u0027delete_qos_policy\u0027,"},{"line_number":4538,"context_line":"                                      mock.Mock())"},{"line_number":4539,"context_line":""},{"line_number":4540,"context_line":"        qos \u003d smartx.SmartQos(self.driver.plugin.helper)"},{"line_number":4541,"context_line":"        qos.delete_qos(\u002711\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_cdafe092","line":4538,"range":{"start_line":4538,"start_character":38,"end_line":4538,"end_character":49},"in_reply_to":"7a8ec9b2_f371e8e1","updated":"2016-09-20 10:06:30.000000000","message":"Done","commit_id":"3a84a669556d919085934823fb318a40f5450cee"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"cd206aed7c35e683934d6ec4d48727d0091b9f68","unresolved":false,"context_lines":[{"line_number":4523,"context_line":""},{"line_number":4524,"context_line":"        self.assertEqual(expected_state, result_state)"},{"line_number":4525,"context_line":""},{"line_number":4526,"context_line":"    @ddt.data(\u00272\u0027, \u002745\u0027, \u002746\u0027)"},{"line_number":4527,"context_line":"    def test_delete_qos(self, qos_status):"},{"line_number":4528,"context_line":"        self.driver.plugin.helper.custom_results[\u0027/ioclass/11\u0027] \u003d {"},{"line_number":4529,"context_line":"            \"GET\": \"\"\"{\"error\":{\"code\":0}, \"data\":{\"RUNNINGSTATUS\": \"%s\"}}\"\"\" %"}],"source_content_type":"text/x-python","patch_set":3,"id":"7a8ec9b2_c8f783d1","line":4526,"range":{"start_line":4526,"start_character":13,"end_line":4526,"end_character":30},"updated":"2016-09-21 11:33:43.000000000","message":"Please use the constants.","commit_id":"1763680f6ceae1712ba8da84e8ad24dc4218eac3"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"56e0843723971b39c52ea0ede62b77c8b69bc326","unresolved":false,"context_lines":[{"line_number":4523,"context_line":""},{"line_number":4524,"context_line":"        self.assertEqual(expected_state, result_state)"},{"line_number":4525,"context_line":""},{"line_number":4526,"context_line":"    @ddt.data(\u00272\u0027, \u002745\u0027, \u002746\u0027)"},{"line_number":4527,"context_line":"    def test_delete_qos(self, qos_status):"},{"line_number":4528,"context_line":"        self.driver.plugin.helper.custom_results[\u0027/ioclass/11\u0027] \u003d {"},{"line_number":4529,"context_line":"            \"GET\": \"\"\"{\"error\":{\"code\":0}, \"data\":{\"RUNNINGSTATUS\": \"%s\"}}\"\"\" %"}],"source_content_type":"text/x-python","patch_set":3,"id":"7a8ec9b2_758a98c0","line":4526,"range":{"start_line":4526,"start_character":13,"end_line":4526,"end_character":30},"in_reply_to":"7a8ec9b2_c8f783d1","updated":"2016-09-22 03:09:26.000000000","message":"Done","commit_id":"1763680f6ceae1712ba8da84e8ad24dc4218eac3"}],"releasenotes/notes/fix-huawei-driver-qos-deletion-9ad62db3d7415980.yaml":[{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"5688ca6915f94845ff602a30d91a5c319523e4ca","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - If qos status in huawei array is \u0027waiting\u0027, the qos deletion"},{"line_number":4,"context_line":"    will fail because huawei driver doesn\u0027t deactivate it before"},{"line_number":5,"context_line":"    deleting."},{"line_number":6,"context_line":"    Fix this bug by deactivating qos before deleting, if qos status"},{"line_number":7,"context_line":"    is not \u0027INACTIVATED\u0027."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7a8ec9b2_4831b359","line":7,"range":{"start_line":3,"start_character":4,"end_line":7,"end_character":25},"updated":"2016-09-21 11:37:03.000000000","message":"It is better to just say what you fixed instead of explaining the bug in the reno. I suggest:\n\n\"Fixed qos deletion failing in huawei driver when qos status is \u0027waiting\u0027 by deactivating it first if status is not \u0027INACTIVATED\u0027.","commit_id":"1763680f6ceae1712ba8da84e8ad24dc4218eac3"},{"author":{"_account_id":15100,"name":"zhongjun","email":"jun.zhongjun2@gmail.com","username":"zhongjun2"},"change_message_id":"5ca2ae4e189e849bc95773018f591fc19d9db569","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    will fail because huawei driver doesn\u0027t deactivate it before"},{"line_number":5,"context_line":"    deleting."},{"line_number":6,"context_line":"    Fix this bug by deactivating qos before deleting, if qos status"},{"line_number":7,"context_line":"    is not \u0027INACTIVATED\u0027."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7a8ec9b2_f07c4122","line":7,"range":{"start_line":7,"start_character":12,"end_line":7,"end_character":23},"updated":"2016-09-21 04:24:02.000000000","message":"nit: \u0027inactivated\u0027 or \u0027WAITING\u0027 in line 3?","commit_id":"1763680f6ceae1712ba8da84e8ad24dc4218eac3"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"56e0843723971b39c52ea0ede62b77c8b69bc326","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - If qos status in huawei array is \u0027waiting\u0027, the qos deletion"},{"line_number":4,"context_line":"    will fail because huawei driver doesn\u0027t deactivate it before"},{"line_number":5,"context_line":"    deleting."},{"line_number":6,"context_line":"    Fix this bug by deactivating qos before deleting, if qos status"},{"line_number":7,"context_line":"    is not \u0027INACTIVATED\u0027."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7a8ec9b2_b590a0ee","line":7,"range":{"start_line":3,"start_character":4,"end_line":7,"end_character":25},"in_reply_to":"7a8ec9b2_4831b359","updated":"2016-09-22 03:09:26.000000000","message":"Done","commit_id":"1763680f6ceae1712ba8da84e8ad24dc4218eac3"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"cd206aed7c35e683934d6ec4d48727d0091b9f68","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    will fail because huawei driver doesn\u0027t deactivate it before"},{"line_number":5,"context_line":"    deleting."},{"line_number":6,"context_line":"    Fix this bug by deactivating qos before deleting, if qos status"},{"line_number":7,"context_line":"    is not \u0027INACTIVATED\u0027."}],"source_content_type":"text/x-yaml","patch_set":3,"id":"7a8ec9b2_6823cf58","line":7,"range":{"start_line":7,"start_character":12,"end_line":7,"end_character":23},"in_reply_to":"7a8ec9b2_f07c4122","updated":"2016-09-21 11:33:43.000000000","message":"+1","commit_id":"1763680f6ceae1712ba8da84e8ad24dc4218eac3"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"acf1ef18c6feebf86f423c8e97055b7f7fb764aa","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - Fixed qos deleltion failing in huawei driver when qos status is \u0027idle\u0027"},{"line_number":4,"context_line":"    by deactivating it first."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"5a8bc5a2_6ee7cd12","line":3,"range":{"start_line":3,"start_character":14,"end_line":3,"end_character":23},"updated":"2016-09-22 11:12:29.000000000","message":"deletion","commit_id":"ea8e67257d32a162463e2604390917dcc3e781bf"},{"author":{"_account_id":16203,"name":"zengyingzhe","email":"zengyingzhe@huawei.com","username":"zengyingzhe"},"change_message_id":"82a6b8ae527398c2c649ec7d8cd16c58af8fda30","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - Fixed qos deleltion failing in huawei driver when qos status is \u0027idle\u0027"},{"line_number":4,"context_line":"    by deactivating it first."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"5a8bc5a2_74416039","line":3,"range":{"start_line":3,"start_character":14,"end_line":3,"end_character":23},"in_reply_to":"5a8bc5a2_6ee7cd12","updated":"2016-09-22 11:36:51.000000000","message":"Done. Thanks.","commit_id":"ea8e67257d32a162463e2604390917dcc3e781bf"}]}
