)]}'
{"nova/compute/manager.py":[{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"3822620123a81ab616f2ec623f1cccdca1364ca2","unresolved":false,"context_lines":[{"line_number":5139,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":5140,"context_line":"                LOG.exception(_LE(\u0027Pre live migration failed at %s\u0027),"},{"line_number":5141,"context_line":"                              dest, instance\u003dinstance)"},{"line_number":5142,"context_line":"                self._set_migration_status(migration, \u0027failed\u0027)"},{"line_number":5143,"context_line":"                self._rollback_live_migration(context, instance, dest,"},{"line_number":5144,"context_line":"                                              block_migration, migrate_data)"},{"line_number":5145,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"fa69d971_6cc3ec89","side":"PARENT","line":5142,"updated":"2016-01-06 09:35:40.000000000","message":"I wonder if this is the correct one to remove.\n\nIf we fail during the rollback the migration will no longer be updated. That may or may not be correct. Needs some thought.","commit_id":"4c195f20dee7cebcd8eaa93e03d89e9b4c25d6bd"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"3822620123a81ab616f2ec623f1cccdca1364ca2","unresolved":false,"context_lines":[{"line_number":5458,"context_line":""},{"line_number":5459,"context_line":"        self._notify_about_instance_usage(context, instance,"},{"line_number":5460,"context_line":"                                          \"live_migration._rollback.end\")"},{"line_number":5461,"context_line":"        self._set_migration_status(migration, \u0027error\u0027)"},{"line_number":5462,"context_line":""},{"line_number":5463,"context_line":"    @wrap_exception()"},{"line_number":5464,"context_line":"    @wrap_instance_event"}],"source_content_type":"text/x-python","patch_set":3,"id":"fa69d971_acf564ed","line":5461,"updated":"2016-01-06 09:35:40.000000000","message":"What about removing this one instead?","commit_id":"ae76e648b8a201afd0d5da6368d7bb48fcbff661"},{"author":{"_account_id":10485,"name":"Ankit Agrawal","email":"ankitagrawal8188@gmail.com","username":"ankitagrawal"},"change_message_id":"f1e102cd6572b186cedac6c5329721e3ccee55c0","unresolved":false,"context_lines":[{"line_number":5458,"context_line":""},{"line_number":5459,"context_line":"        self._notify_about_instance_usage(context, instance,"},{"line_number":5460,"context_line":"                                          \"live_migration._rollback.end\")"},{"line_number":5461,"context_line":"        self._set_migration_status(migration, \u0027error\u0027)"},{"line_number":5462,"context_line":""},{"line_number":5463,"context_line":"    @wrap_exception()"},{"line_number":5464,"context_line":"    @wrap_instance_event"}],"source_content_type":"text/x-python","patch_set":3,"id":"7af24918_1054061f","line":5461,"in_reply_to":"fa69d971_acf564ed","updated":"2016-03-03 06:25:54.000000000","message":"If we remove this one, we\u0027ll need to update migration status at all the other places before calling “_rollback_live_migration”.\nFor ex. https://github.com/openstack/nova/blob/master/nova/virt/libvirt/driver.py#L6455\n\n\nSo currently there is only one occurrence at https://github.com/openstack/nova/blob/master/nova/compute/manager.py#L5211 where we\u0027re updating the migration status redundantly which is also not consistent with other “_rollback_live_migration” calls. So IMO we can move the migration update call to just after getting the migration object in “_rollback_live_migration” method to reduce the chances of wrong migration status in case of “_rollback_live_migration” fails.\n\n\nPlease let me know your suggestions.","commit_id":"ae76e648b8a201afd0d5da6368d7bb48fcbff661"}]}
