)]}'
{"cinder/tests/unit/test_volume.py":[{"author":{"_account_id":15961,"name":"lisali","email":"xiaoyan.li@intel.com","username":"lisali"},"change_message_id":"700bd23597c96195a5b016f31b5684a89e10b91d","unresolved":false,"context_lines":[{"line_number":4663,"context_line":"        db.volume_type_create(elevated, {\u0027name\u0027: \u0027type1\u0027, \u0027extra_specs\u0027: {}})"},{"line_number":4664,"context_line":"        vol_type \u003d db.volume_type_get_by_name(elevated, \u0027type1\u0027)"},{"line_number":4665,"context_line":"        # create source volume"},{"line_number":4666,"context_line":"        self.volume_params[\u0027volume_type_id\u0027] \u003d vol_type[\u0027id\u0027]"},{"line_number":4667,"context_line":"        self.volume_params[\u0027status\u0027] \u003d \u0027managing\u0027"},{"line_number":4668,"context_line":"        test_vol \u003d tests_utils.create_volume(self.context,"},{"line_number":4669,"context_line":"                                             **self.volume_params)"},{"line_number":4670,"context_line":"        mock_size.side_effect \u003d exception.CinderException()"},{"line_number":4671,"context_line":""},{"line_number":4672,"context_line":"        self.assertRaises(exception.CinderException,"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa7ab95a_70046e49","line":4669,"range":{"start_line":4666,"start_character":0,"end_line":4669,"end_character":66},"updated":"2016-08-30 00:54:17.000000000","message":"I think local variable volume_params is enough.\n\nvolume_params[\u0027volume_type_id\u0027] \u003d vol_type[\u0027id\u0027]\nvolume_params[\u0027status\u0027] \u003d \u0027managing\u0027\ntest_vol \u003d tests_utils.create_volume(self.context,\n                                             **volume_params)","commit_id":"20dee8a68b52a7f0a6aa07d39b2fb1dd256b3f0a"},{"author":{"_account_id":8846,"name":"Hao Wang","display_name":"Hao Wang","email":"sxmatch1986@gmail.com","username":"sxmatch"},"change_message_id":"8469318e036ad9b6b7eb13916873e0c0b0b92549","unresolved":false,"context_lines":[{"line_number":4663,"context_line":"        db.volume_type_create(elevated, {\u0027name\u0027: \u0027type1\u0027, \u0027extra_specs\u0027: {}})"},{"line_number":4664,"context_line":"        vol_type \u003d db.volume_type_get_by_name(elevated, \u0027type1\u0027)"},{"line_number":4665,"context_line":"        # create source volume"},{"line_number":4666,"context_line":"        self.volume_params[\u0027volume_type_id\u0027] \u003d vol_type[\u0027id\u0027]"},{"line_number":4667,"context_line":"        self.volume_params[\u0027status\u0027] \u003d \u0027managing\u0027"},{"line_number":4668,"context_line":"        test_vol \u003d tests_utils.create_volume(self.context,"},{"line_number":4669,"context_line":"                                             **self.volume_params)"},{"line_number":4670,"context_line":"        mock_size.side_effect \u003d exception.CinderException()"},{"line_number":4671,"context_line":""},{"line_number":4672,"context_line":"        self.assertRaises(exception.CinderException,"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa7ab95a_2be517db","line":4669,"range":{"start_line":4666,"start_character":0,"end_line":4669,"end_character":66},"in_reply_to":"fa7ab95a_70046e49","updated":"2016-08-30 01:10:48.000000000","message":"sure","commit_id":"20dee8a68b52a7f0a6aa07d39b2fb1dd256b3f0a"},{"author":{"_account_id":15961,"name":"lisali","email":"xiaoyan.li@intel.com","username":"lisali"},"change_message_id":"700bd23597c96195a5b016f31b5684a89e10b91d","unresolved":false,"context_lines":[{"line_number":4667,"context_line":"        self.volume_params[\u0027status\u0027] \u003d \u0027managing\u0027"},{"line_number":4668,"context_line":"        test_vol \u003d tests_utils.create_volume(self.context,"},{"line_number":4669,"context_line":"                                             **self.volume_params)"},{"line_number":4670,"context_line":"        mock_size.side_effect \u003d exception.CinderException()"},{"line_number":4671,"context_line":""},{"line_number":4672,"context_line":"        self.assertRaises(exception.CinderException,"},{"line_number":4673,"context_line":"                          self.volume.manage_existing, self.context,"},{"line_number":4674,"context_line":"                          None, \u0027volume_ref\u0027, test_vol)"},{"line_number":4675,"context_line":"        mock_notify.assert_called_once_with(self.context, test_vol,"},{"line_number":4676,"context_line":"                                            \u0027manage_existing.start\u0027,"},{"line_number":4677,"context_line":"                                            host\u003dtest_vol.host)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa7ab95a_0ba213fd","line":4674,"range":{"start_line":4670,"start_character":0,"end_line":4674,"end_character":55},"updated":"2016-08-30 00:54:17.000000000","message":"I suggest you also mock this function so that you no need to raise exception. \n\n@mock.patch(\u0027cinder.volume.drivers.lvm.LVMVolumeDriver.\u0027\n+                \u0027manage_existing\u0027)\n\nmock_size.return_value \u003d 1\n\nThis make a successful test case, and easier to understand. Meanwhile, it tests the whole manage existing process as you update the volume in this file.","commit_id":"20dee8a68b52a7f0a6aa07d39b2fb1dd256b3f0a"},{"author":{"_account_id":8846,"name":"Hao Wang","display_name":"Hao Wang","email":"sxmatch1986@gmail.com","username":"sxmatch"},"change_message_id":"8469318e036ad9b6b7eb13916873e0c0b0b92549","unresolved":false,"context_lines":[{"line_number":4667,"context_line":"        self.volume_params[\u0027status\u0027] \u003d \u0027managing\u0027"},{"line_number":4668,"context_line":"        test_vol \u003d tests_utils.create_volume(self.context,"},{"line_number":4669,"context_line":"                                             **self.volume_params)"},{"line_number":4670,"context_line":"        mock_size.side_effect \u003d exception.CinderException()"},{"line_number":4671,"context_line":""},{"line_number":4672,"context_line":"        self.assertRaises(exception.CinderException,"},{"line_number":4673,"context_line":"                          self.volume.manage_existing, self.context,"},{"line_number":4674,"context_line":"                          None, \u0027volume_ref\u0027, test_vol)"},{"line_number":4675,"context_line":"        mock_notify.assert_called_once_with(self.context, test_vol,"},{"line_number":4676,"context_line":"                                            \u0027manage_existing.start\u0027,"},{"line_number":4677,"context_line":"                                            host\u003dtest_vol.host)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa7ab95a_cbd66bf0","line":4674,"range":{"start_line":4670,"start_character":0,"end_line":4674,"end_character":55},"in_reply_to":"fa7ab95a_0ba213fd","updated":"2016-08-30 01:10:48.000000000","message":"okay","commit_id":"20dee8a68b52a7f0a6aa07d39b2fb1dd256b3f0a"}],"cinder/volume/flows/manager/manage_existing.py":[{"author":{"_account_id":15961,"name":"lisali","email":"xiaoyan.li@intel.com","username":"lisali"},"change_message_id":"084ac932bf85815305cb4896185d2e8b1544c60d","unresolved":false,"context_lines":[{"line_number":108,"context_line":"    create_what \u003d {"},{"line_number":109,"context_line":"        \u0027context\u0027: context,"},{"line_number":110,"context_line":"        \u0027volume_ref\u0027: volume,"},{"line_number":111,"context_line":"        \u0027volume\u0027: volume,"},{"line_number":112,"context_line":"        \u0027manage_existing_ref\u0027: ref,"},{"line_number":113,"context_line":"        \u0027optional_args\u0027: {\u0027is_quota_committed\u0027: False}"},{"line_number":114,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa7ab95a_84e9f882","line":111,"updated":"2016-08-29 03:43:48.000000000","message":"-1, why not update volume to volume_ref in NotifyVolumeActionTask?\n\nIt is not good to duplicate parameters.","commit_id":"359d7f3a9a23bf571ec398c5ad88c77ac6b89bf3"},{"author":{"_account_id":15961,"name":"lisali","email":"xiaoyan.li@intel.com","username":"lisali"},"change_message_id":"73a726f6536e31bd323ab842a31f2dd37e031f89","unresolved":false,"context_lines":[{"line_number":108,"context_line":"    create_what \u003d {"},{"line_number":109,"context_line":"        \u0027context\u0027: context,"},{"line_number":110,"context_line":"        \u0027volume_ref\u0027: volume,"},{"line_number":111,"context_line":"        \u0027volume\u0027: volume,"},{"line_number":112,"context_line":"        \u0027manage_existing_ref\u0027: ref,"},{"line_number":113,"context_line":"        \u0027optional_args\u0027: {\u0027is_quota_committed\u0027: False}"},{"line_number":114,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa7ab95a_932a1c2b","line":111,"in_reply_to":"fa7ab95a_78101702","updated":"2016-08-29 06:37:00.000000000","message":"Can we update volume to volume_ref in this file?","commit_id":"359d7f3a9a23bf571ec398c5ad88c77ac6b89bf3"},{"author":{"_account_id":8846,"name":"Hao Wang","display_name":"Hao Wang","email":"sxmatch1986@gmail.com","username":"sxmatch"},"change_message_id":"1ff124c8f6dc8674a1ad7731148b5cb73a5bae57","unresolved":false,"context_lines":[{"line_number":108,"context_line":"    create_what \u003d {"},{"line_number":109,"context_line":"        \u0027context\u0027: context,"},{"line_number":110,"context_line":"        \u0027volume_ref\u0027: volume,"},{"line_number":111,"context_line":"        \u0027volume\u0027: volume,"},{"line_number":112,"context_line":"        \u0027manage_existing_ref\u0027: ref,"},{"line_number":113,"context_line":"        \u0027optional_args\u0027: {\u0027is_quota_committed\u0027: False}"},{"line_number":114,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa7ab95a_ad86df10","line":111,"in_reply_to":"fa7ab95a_84e9f882","updated":"2016-08-29 05:39:20.000000000","message":"Yes, I thought this way, but it will change create_volume flow in many places, so I\u0027m not sure which\u0027s better.","commit_id":"359d7f3a9a23bf571ec398c5ad88c77ac6b89bf3"},{"author":{"_account_id":8846,"name":"Hao Wang","display_name":"Hao Wang","email":"sxmatch1986@gmail.com","username":"sxmatch"},"change_message_id":"e48da4af471b5de814879788ea5cc031dc2bcd0d","unresolved":false,"context_lines":[{"line_number":108,"context_line":"    create_what \u003d {"},{"line_number":109,"context_line":"        \u0027context\u0027: context,"},{"line_number":110,"context_line":"        \u0027volume_ref\u0027: volume,"},{"line_number":111,"context_line":"        \u0027volume\u0027: volume,"},{"line_number":112,"context_line":"        \u0027manage_existing_ref\u0027: ref,"},{"line_number":113,"context_line":"        \u0027optional_args\u0027: {\u0027is_quota_committed\u0027: False}"},{"line_number":114,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa7ab95a_b3556051","line":111,"in_reply_to":"fa7ab95a_932a1c2b","updated":"2016-08-29 06:45:45.000000000","message":"Emm, it\u0027s fine, we need to update some tasks in this file.","commit_id":"359d7f3a9a23bf571ec398c5ad88c77ac6b89bf3"},{"author":{"_account_id":15961,"name":"lisali","email":"xiaoyan.li@intel.com","username":"lisali"},"change_message_id":"93d0506b51c3fbd55a2042d1dd1670febacc01d2","unresolved":false,"context_lines":[{"line_number":108,"context_line":"    create_what \u003d {"},{"line_number":109,"context_line":"        \u0027context\u0027: context,"},{"line_number":110,"context_line":"        \u0027volume_ref\u0027: volume,"},{"line_number":111,"context_line":"        \u0027volume\u0027: volume,"},{"line_number":112,"context_line":"        \u0027manage_existing_ref\u0027: ref,"},{"line_number":113,"context_line":"        \u0027optional_args\u0027: {\u0027is_quota_committed\u0027: False}"},{"line_number":114,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa7ab95a_adba5f6c","line":111,"in_reply_to":"fa7ab95a_ad86df10","updated":"2016-08-29 05:52:08.000000000","message":"You just need to change volume_ref to volume in class NotifyVolumeActionTask:\n\nhttps://github.com/openstack/cinder/blob/master/cinder/volume/flows/manager/create_volume.py#L338-L350","commit_id":"359d7f3a9a23bf571ec398c5ad88c77ac6b89bf3"},{"author":{"_account_id":8846,"name":"Hao Wang","display_name":"Hao Wang","email":"sxmatch1986@gmail.com","username":"sxmatch"},"change_message_id":"8c6191fa5a791bf64e00d1d7d783cc46cc035ce6","unresolved":false,"context_lines":[{"line_number":108,"context_line":"    create_what \u003d {"},{"line_number":109,"context_line":"        \u0027context\u0027: context,"},{"line_number":110,"context_line":"        \u0027volume_ref\u0027: volume,"},{"line_number":111,"context_line":"        \u0027volume\u0027: volume,"},{"line_number":112,"context_line":"        \u0027manage_existing_ref\u0027: ref,"},{"line_number":113,"context_line":"        \u0027optional_args\u0027: {\u0027is_quota_committed\u0027: False}"},{"line_number":114,"context_line":"    }"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa7ab95a_78101702","line":111,"in_reply_to":"fa7ab95a_adba5f6c","updated":"2016-08-29 06:08:26.000000000","message":"Not only this, you can see the dict https://github.com/openstack/cinder/blob/master/cinder/volume/flows/manager/create_volume.py#L912-L917, we need to change the volume to volume_ref in this dict and ExtractVolumeSpecTask, NotifyVolumeActionTask, CreateVolumeFromSpecTask, CreateVolumeOnFinishTask.  Since those task both use \u0027volume\u0027 not \u0027volume_ref\u0027 as argument.  If we just change volume to volume_ref in NotifyVolumeActionTask, we will bring this issue to create_volume flow too.","commit_id":"359d7f3a9a23bf571ec398c5ad88c77ac6b89bf3"}]}
