)]}'
{"nova/compute/manager.py":[{"author":{"_account_id":14819,"name":"Timofey Durakov","email":"timofei.nd@gmail.com","username":"tdurakov"},"change_message_id":"2e463230da67a6acfb1a83b21fcf41099b82990e","unresolved":false,"context_lines":[{"line_number":5389,"context_line":"                node_name \u003d None"},{"line_number":5390,"context_line":"                current_power_state \u003d power_state.RUNNING"},{"line_number":5391,"context_line":"                try:"},{"line_number":5392,"context_line":"                    current_power_state \u003d self._get_power_state(ctxt,"},{"line_number":5393,"context_line":"                                                                instance)"},{"line_number":5394,"context_line":"                    compute_node \u003d self._get_compute_info(ctxt, dest)"},{"line_number":5395,"context_line":"                    node_name \u003d compute_node.hypervisor_hostname"},{"line_number":5396,"context_line":"                except exception.ComputeHostNotFound:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a98d1f4_6d9ba518","line":5393,"range":{"start_line":5392,"start_character":20,"end_line":5393,"end_character":73},"updated":"2016-10-03 07:26:16.000000000","message":"by that moment there will be no instance running on the source compute, so this line will fail InstanceNotFound","commit_id":"c07fc98191bae7f0bc7b09f7b326d491345322c0"},{"author":{"_account_id":6608,"name":"Paul Carlton","email":"paul.carlton2@hpe.com","username":"paul-carlton2"},"change_message_id":"0f59482a386c99c8d2a1aef7f07675a9681b76da","unresolved":false,"context_lines":[{"line_number":5389,"context_line":"                node_name \u003d None"},{"line_number":5390,"context_line":"                current_power_state \u003d power_state.RUNNING"},{"line_number":5391,"context_line":"                try:"},{"line_number":5392,"context_line":"                    current_power_state \u003d self._get_power_state(ctxt,"},{"line_number":5393,"context_line":"                                                                instance)"},{"line_number":5394,"context_line":"                    compute_node \u003d self._get_compute_info(ctxt, dest)"},{"line_number":5395,"context_line":"                    node_name \u003d compute_node.hypervisor_hostname"},{"line_number":5396,"context_line":"                except exception.ComputeHostNotFound:"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a98d1f4_18e7bd40","line":5393,"range":{"start_line":5392,"start_character":20,"end_line":5393,"end_character":73},"in_reply_to":"3a98d1f4_6d9ba518","updated":"2016-10-03 07:52:02.000000000","message":"Done","commit_id":"c07fc98191bae7f0bc7b09f7b326d491345322c0"},{"author":{"_account_id":14819,"name":"Timofey Durakov","email":"timofei.nd@gmail.com","username":"tdurakov"},"change_message_id":"b05f03a7e397a90af32a7c0e29fb63dd0677beef","unresolved":false,"context_lines":[{"line_number":5390,"context_line":"                try:"},{"line_number":5391,"context_line":"                    compute_node \u003d self._get_compute_info(ctxt, dest)"},{"line_number":5392,"context_line":"                    node_name \u003d compute_node.hypervisor_hostname"},{"line_number":5393,"context_line":"                    self.compute_rpcapi.post_live_migration_at_destination("},{"line_number":5394,"context_line":"                                        ctxt, instance, block_migration, dest)"},{"line_number":5395,"context_line":"                except exception.ComputeHostNotFound:"},{"line_number":5396,"context_line":"                    LOG.exception(_LE(\u0027Failed to complete post migration\u0027))"},{"line_number":5397,"context_line":"                finally:"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a98d1f4_13aa3e19","line":5394,"range":{"start_line":5393,"start_character":20,"end_line":5394,"end_character":78},"updated":"2016-10-03 08:43:09.000000000","message":"this line also bring a problem, as I understand this code, it\u0027s possible that post_live_migration_at_destination was called 2 times, right?","commit_id":"c17a9beb1d130000cb3c6d9bd989750024f6b364"},{"author":{"_account_id":6608,"name":"Paul Carlton","email":"paul.carlton2@hpe.com","username":"paul-carlton2"},"change_message_id":"e1263382bd2d2cd8d9e97bb0ad21075c76f59893","unresolved":false,"context_lines":[{"line_number":5390,"context_line":"                try:"},{"line_number":5391,"context_line":"                    compute_node \u003d self._get_compute_info(ctxt, dest)"},{"line_number":5392,"context_line":"                    node_name \u003d compute_node.hypervisor_hostname"},{"line_number":5393,"context_line":"                    self.compute_rpcapi.post_live_migration_at_destination("},{"line_number":5394,"context_line":"                                        ctxt, instance, block_migration, dest)"},{"line_number":5395,"context_line":"                except exception.ComputeHostNotFound:"},{"line_number":5396,"context_line":"                    LOG.exception(_LE(\u0027Failed to complete post migration\u0027))"},{"line_number":5397,"context_line":"                finally:"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a98d1f4_bea79109","line":5394,"range":{"start_line":5393,"start_character":20,"end_line":5394,"end_character":78},"in_reply_to":"3a98d1f4_13aa3e19","updated":"2016-10-03 08:50:18.000000000","message":"Agreed, but my I don\u0027t think that is too bad, either actions taken there can be repeated without any issue or they will fail and an exception will be raised.  This path in the code will only be traversed if something in post migration has already failed.  If it failed before the call to post migrate a destination then we are performing some post migration steps that need to be performed anyway and if it failed in or after this call a retry can\u0027t hurt.  However, I\u0027m happy to implement a more intelligent solution that keeps track of where it failed and proceeds appropriately if you think that would be better?","commit_id":"c17a9beb1d130000cb3c6d9bd989750024f6b364"}]}
