)]}'
{"nova/tests/functional/integrated_helpers.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"be730c3f06b10baa56ddc65e51bf403b329adec0","unresolved":false,"context_lines":[{"line_number":269,"context_line":"                               fail_when_run_out_of_retries\u003dTrue):"},{"line_number":270,"context_line":"        return self._wait_for_server_parameter("},{"line_number":271,"context_line":"            admin_api, server, {\u0027status\u0027: expected_status}, max_retries,"},{"line_number":272,"context_line":"            fail_when_run_out_of_retries)"},{"line_number":273,"context_line":""},{"line_number":274,"context_line":"    def _build_minimal_create_server_request(self, api, name, image_uuid\u003dNone,"},{"line_number":275,"context_line":"                                             flavor_id\u003dNone, networks\u003dNone,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_1d3f8425","line":272,"range":{"start_line":272,"start_character":12,"end_line":272,"end_character":40},"updated":"2019-03-26 20:24:56.000000000","message":"name kwargs","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"8b8aa89c60d8bbb5aac693fbd8b6f225d1da56f8","unresolved":false,"context_lines":[{"line_number":269,"context_line":"                               fail_when_run_out_of_retries\u003dTrue):"},{"line_number":270,"context_line":"        return self._wait_for_server_parameter("},{"line_number":271,"context_line":"            admin_api, server, {\u0027status\u0027: expected_status}, max_retries,"},{"line_number":272,"context_line":"            fail_when_run_out_of_retries)"},{"line_number":273,"context_line":""},{"line_number":274,"context_line":"    def _build_minimal_create_server_request(self, api, name, image_uuid\u003dNone,"},{"line_number":275,"context_line":"                                             flavor_id\u003dNone, networks\u003dNone,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_d7f6af8f","line":272,"range":{"start_line":272,"start_character":12,"end_line":272,"end_character":40},"in_reply_to":"5fc1f717_1d3f8425","updated":"2019-03-27 09:57:00.000000000","message":"Done","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"}],"nova/tests/functional/test_servers.py":[{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"be730c3f06b10baa56ddc65e51bf403b329adec0","unresolved":false,"context_lines":[{"line_number":4014,"context_line":"        self.assertFlavorMatchesUsage(dest_rp_uuid, self.flavor1)"},{"line_number":4015,"context_line":""},{"line_number":4016,"context_line":"    def test_allocation_fails_during_reschedule(self):"},{"line_number":4017,"context_line":"        \"\"\"Verify that if nova fails to allocated resources during re-schedule"},{"line_number":4018,"context_line":"        then the server is put into ERROR state properly."},{"line_number":4019,"context_line":"        \"\"\""},{"line_number":4020,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_9d7934fd","line":4017,"range":{"start_line":4017,"start_character":40,"end_line":4017,"end_character":49},"updated":"2019-03-26 20:24:56.000000000","message":"allocate","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"8b8aa89c60d8bbb5aac693fbd8b6f225d1da56f8","unresolved":false,"context_lines":[{"line_number":4014,"context_line":"        self.assertFlavorMatchesUsage(dest_rp_uuid, self.flavor1)"},{"line_number":4015,"context_line":""},{"line_number":4016,"context_line":"    def test_allocation_fails_during_reschedule(self):"},{"line_number":4017,"context_line":"        \"\"\"Verify that if nova fails to allocated resources during re-schedule"},{"line_number":4018,"context_line":"        then the server is put into ERROR state properly."},{"line_number":4019,"context_line":"        \"\"\""},{"line_number":4020,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_97eca7bb","line":4017,"range":{"start_line":4017,"start_character":40,"end_line":4017,"end_character":49},"in_reply_to":"5fc1f717_9d7934fd","updated":"2019-03-27 09:57:00.000000000","message":"Done","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"be730c3f06b10baa56ddc65e51bf403b329adec0","unresolved":false,"context_lines":[{"line_number":4023,"context_line":"            image_uuid\u003d\u0027155d900f-4e14-4e4c-a73d-069cbf4541e6\u0027,"},{"line_number":4024,"context_line":"            networks\u003d\u0027none\u0027)"},{"line_number":4025,"context_line":""},{"line_number":4026,"context_line":"        from nova.scheduler import utils"},{"line_number":4027,"context_line":"        orig_claim \u003d utils.claim_resources"},{"line_number":4028,"context_line":"        calls \u003d []"},{"line_number":4029,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_7dd248d3","line":4026,"range":{"start_line":4026,"start_character":8,"end_line":4026,"end_character":40},"updated":"2019-03-26 20:24:56.000000000","message":"why is this not done at the top in the imports section?","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"8b8aa89c60d8bbb5aac693fbd8b6f225d1da56f8","unresolved":false,"context_lines":[{"line_number":4023,"context_line":"            image_uuid\u003d\u0027155d900f-4e14-4e4c-a73d-069cbf4541e6\u0027,"},{"line_number":4024,"context_line":"            networks\u003d\u0027none\u0027)"},{"line_number":4025,"context_line":""},{"line_number":4026,"context_line":"        from nova.scheduler import utils"},{"line_number":4027,"context_line":"        orig_claim \u003d utils.claim_resources"},{"line_number":4028,"context_line":"        calls \u003d []"},{"line_number":4029,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_f732cb5d","line":4026,"range":{"start_line":4026,"start_character":8,"end_line":4026,"end_character":40},"in_reply_to":"5fc1f717_7dd248d3","updated":"2019-03-27 09:57:00.000000000","message":"Because i forgot to move it there. Done.","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"be730c3f06b10baa56ddc65e51bf403b329adec0","unresolved":false,"context_lines":[{"line_number":4030,"context_line":"        # First call is during boot, we want that to succeed normally. Then the"},{"line_number":4031,"context_line":"        # fake virt driver triggers a re-schedule. During that re-schedule we"},{"line_number":4032,"context_line":"        # simulate that the placement call fails."},{"line_number":4033,"context_line":"        def fake_claim(*args, **kwargs):"},{"line_number":4034,"context_line":"            if not calls:"},{"line_number":4035,"context_line":"                calls.append(\u0027called\u0027)"},{"line_number":4036,"context_line":"                return orig_claim(*args, **kwargs)"},{"line_number":4037,"context_line":"            else:"},{"line_number":4038,"context_line":"                raise exception.AllocationUpdateFailed("},{"line_number":4039,"context_line":"                    consumer_uuid\u003duuids.inst1, error\u003d\u0027testing\u0027)"},{"line_number":4040,"context_line":""},{"line_number":4041,"context_line":"        with mock.patch(\u0027nova.scheduler.utils.claim_resources\u0027,"},{"line_number":4042,"context_line":"                        side_effect\u003dfake_claim):"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_7d156848","line":4039,"range":{"start_line":4033,"start_character":0,"end_line":4039,"end_character":63},"updated":"2019-03-26 20:24:56.000000000","message":"You could also do this with\n\n side_effect\u003d[orig_claim, exception.AllocationUpdateFailed(...)]","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"8b8aa89c60d8bbb5aac693fbd8b6f225d1da56f8","unresolved":false,"context_lines":[{"line_number":4030,"context_line":"        # First call is during boot, we want that to succeed normally. Then the"},{"line_number":4031,"context_line":"        # fake virt driver triggers a re-schedule. During that re-schedule we"},{"line_number":4032,"context_line":"        # simulate that the placement call fails."},{"line_number":4033,"context_line":"        def fake_claim(*args, **kwargs):"},{"line_number":4034,"context_line":"            if not calls:"},{"line_number":4035,"context_line":"                calls.append(\u0027called\u0027)"},{"line_number":4036,"context_line":"                return orig_claim(*args, **kwargs)"},{"line_number":4037,"context_line":"            else:"},{"line_number":4038,"context_line":"                raise exception.AllocationUpdateFailed("},{"line_number":4039,"context_line":"                    consumer_uuid\u003duuids.inst1, error\u003d\u0027testing\u0027)"},{"line_number":4040,"context_line":""},{"line_number":4041,"context_line":"        with mock.patch(\u0027nova.scheduler.utils.claim_resources\u0027,"},{"line_number":4042,"context_line":"                        side_effect\u003dfake_claim):"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_3764d349","line":4039,"range":{"start_line":4033,"start_character":0,"end_line":4039,"end_character":63},"in_reply_to":"5fc1f717_7d156848","updated":"2019-03-27 09:57:00.000000000","message":"Good point. Done","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"be730c3f06b10baa56ddc65e51bf403b329adec0","unresolved":false,"context_lines":[{"line_number":6721,"context_line":"        # First call is during boot, we want that to succeed normally. Then the"},{"line_number":6722,"context_line":"        # fake virt driver triggers a re-schedule. During that re-schedule the"},{"line_number":6723,"context_line":"        # fill is called again, and we simulate that call raises."},{"line_number":6724,"context_line":"        from nova.conductor import manager"},{"line_number":6725,"context_line":"        fill \u003d manager.ComputeTaskManager._fill_provider_mapping"},{"line_number":6726,"context_line":"        calls \u003d []"},{"line_number":6727,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_5db42c82","line":6724,"range":{"start_line":6724,"start_character":8,"end_line":6724,"end_character":42},"updated":"2019-03-26 20:24:56.000000000","message":"likewise","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"8b8aa89c60d8bbb5aac693fbd8b6f225d1da56f8","unresolved":false,"context_lines":[{"line_number":6721,"context_line":"        # First call is during boot, we want that to succeed normally. Then the"},{"line_number":6722,"context_line":"        # fake virt driver triggers a re-schedule. During that re-schedule the"},{"line_number":6723,"context_line":"        # fill is called again, and we simulate that call raises."},{"line_number":6724,"context_line":"        from nova.conductor import manager"},{"line_number":6725,"context_line":"        fill \u003d manager.ComputeTaskManager._fill_provider_mapping"},{"line_number":6726,"context_line":"        calls \u003d []"},{"line_number":6727,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_579abf13","line":6724,"range":{"start_line":6724,"start_character":8,"end_line":6724,"end_character":42},"in_reply_to":"5fc1f717_5db42c82","updated":"2019-03-27 09:57:00.000000000","message":"Done","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"be730c3f06b10baa56ddc65e51bf403b329adec0","unresolved":false,"context_lines":[{"line_number":6722,"context_line":"        # fake virt driver triggers a re-schedule. During that re-schedule the"},{"line_number":6723,"context_line":"        # fill is called again, and we simulate that call raises."},{"line_number":6724,"context_line":"        from nova.conductor import manager"},{"line_number":6725,"context_line":"        fill \u003d manager.ComputeTaskManager._fill_provider_mapping"},{"line_number":6726,"context_line":"        calls \u003d []"},{"line_number":6727,"context_line":""},{"line_number":6728,"context_line":"        def fake_fill(*args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_fd2718c6","line":6725,"range":{"start_line":6725,"start_character":15,"end_line":6725,"end_character":64},"updated":"2019-03-26 20:24:56.000000000","message":"...though in this case it seems like we ought to be able to access self.conductor.manager.compute_task_mgr (you would have to expose the result of start_service(\u0027conductor\u0027) in ProviderUsageBaseTestCase).","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"dc5cc23caae41400862fc211644c3ec4f634db6b","unresolved":false,"context_lines":[{"line_number":6722,"context_line":"        # fake virt driver triggers a re-schedule. During that re-schedule the"},{"line_number":6723,"context_line":"        # fill is called again, and we simulate that call raises."},{"line_number":6724,"context_line":"        from nova.conductor import manager"},{"line_number":6725,"context_line":"        fill \u003d manager.ComputeTaskManager._fill_provider_mapping"},{"line_number":6726,"context_line":"        calls \u003d []"},{"line_number":6727,"context_line":""},{"line_number":6728,"context_line":"        def fake_fill(*args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_e299996c","line":6725,"range":{"start_line":6725,"start_character":15,"end_line":6725,"end_character":64},"in_reply_to":"5fc1f717_37c053e1","updated":"2019-03-27 20:07:01.000000000","message":"Only because then you\u0027re patching the method on a specific instance rather than the whole class. It will almost never matter. This is fine.","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"8b8aa89c60d8bbb5aac693fbd8b6f225d1da56f8","unresolved":false,"context_lines":[{"line_number":6722,"context_line":"        # fake virt driver triggers a re-schedule. During that re-schedule the"},{"line_number":6723,"context_line":"        # fill is called again, and we simulate that call raises."},{"line_number":6724,"context_line":"        from nova.conductor import manager"},{"line_number":6725,"context_line":"        fill \u003d manager.ComputeTaskManager._fill_provider_mapping"},{"line_number":6726,"context_line":"        calls \u003d []"},{"line_number":6727,"context_line":""},{"line_number":6728,"context_line":"        def fake_fill(*args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_37c053e1","line":6725,"range":{"start_line":6725,"start_character":15,"end_line":6725,"end_character":64},"in_reply_to":"5fc1f717_fd2718c6","updated":"2019-03-27 09:57:00.000000000","message":"I don\u0027t see why that direction would be better.","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"be730c3f06b10baa56ddc65e51bf403b329adec0","unresolved":false,"context_lines":[{"line_number":6725,"context_line":"        fill \u003d manager.ComputeTaskManager._fill_provider_mapping"},{"line_number":6726,"context_line":"        calls \u003d []"},{"line_number":6727,"context_line":""},{"line_number":6728,"context_line":"        def fake_fill(*args, **kwargs):"},{"line_number":6729,"context_line":"            if not calls:"},{"line_number":6730,"context_line":"                calls.append(\u0027called\u0027)"},{"line_number":6731,"context_line":"                return fill(*args, **kwargs)"},{"line_number":6732,"context_line":"            else:"},{"line_number":6733,"context_line":"                raise exception.ConsumerAllocationRetrievalFailed("},{"line_number":6734,"context_line":"                    consumer_uuid\u003duuids.inst1, error\u003d\u0027testing\u0027)"},{"line_number":6735,"context_line":""},{"line_number":6736,"context_line":"        with mock.patch("},{"line_number":6737,"context_line":"                \u0027nova.conductor.manager.ComputeTaskManager.\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_1d0ea43a","line":6734,"range":{"start_line":6728,"start_character":0,"end_line":6734,"end_character":63},"updated":"2019-03-26 20:24:56.000000000","message":"likewise","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"8b8aa89c60d8bbb5aac693fbd8b6f225d1da56f8","unresolved":false,"context_lines":[{"line_number":6725,"context_line":"        fill \u003d manager.ComputeTaskManager._fill_provider_mapping"},{"line_number":6726,"context_line":"        calls \u003d []"},{"line_number":6727,"context_line":""},{"line_number":6728,"context_line":"        def fake_fill(*args, **kwargs):"},{"line_number":6729,"context_line":"            if not calls:"},{"line_number":6730,"context_line":"                calls.append(\u0027called\u0027)"},{"line_number":6731,"context_line":"                return fill(*args, **kwargs)"},{"line_number":6732,"context_line":"            else:"},{"line_number":6733,"context_line":"                raise exception.ConsumerAllocationRetrievalFailed("},{"line_number":6734,"context_line":"                    consumer_uuid\u003duuids.inst1, error\u003d\u0027testing\u0027)"},{"line_number":6735,"context_line":""},{"line_number":6736,"context_line":"        with mock.patch("},{"line_number":6737,"context_line":"                \u0027nova.conductor.manager.ComputeTaskManager.\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_57c39fed","line":6734,"range":{"start_line":6728,"start_character":0,"end_line":6734,"end_character":63},"in_reply_to":"5fc1f717_1d0ea43a","updated":"2019-03-27 09:57:00.000000000","message":"Done","commit_id":"092f71a38a9caa57c3f1c7356f469c6fb8de57c4"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"1c9340e928e8d5b53ba8059272e0207b3fc793ef","unresolved":false,"context_lines":[{"line_number":6738,"context_line":"                \u0027_fill_provider_mapping\u0027,"},{"line_number":6739,"context_line":"                side_effect\u003d["},{"line_number":6740,"context_line":"                    fill,"},{"line_number":6741,"context_line":"                    exception.ConsumerAllocationRetrievalFailed("},{"line_number":6742,"context_line":"                        consumer_uuid\u003duuids.inst1, error\u003d\u0027testing\u0027)],"},{"line_number":6743,"context_line":"                autospec\u003dTrue):"},{"line_number":6744,"context_line":"            server \u003d self._create_server("},{"line_number":6745,"context_line":"                flavor\u003dself.flavor,"}],"source_content_type":"text/x-python","patch_set":4,"id":"5fc1f717_c6149143","line":6742,"range":{"start_line":6741,"start_character":20,"end_line":6742,"end_character":69},"updated":"2019-03-29 04:22:44.000000000","message":"we don\u0027t have this exception in _fill_provider_mapping method now. So I\u0027m doing a revert for this patch https://review.openstack.org/#/c/648605/","commit_id":"b63c42a0d4836fd0364cb306145d3474619f1e19"}]}
