)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"f661708052247a81bb00fe04ce8d751faac9f8fb","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The instance\u0027s task_state will be in \u0027soft-deleting\u0027 if the nova-compute"},{"line_number":10,"context_line":"is down and we should check this case in _init_instance function."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I17e9b4af3772f2c2c4e9b3ac4c1e9e662897d1d7"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"fffc6b78_87d0d4cb","line":11,"updated":"2020-11-19 08:54:29.000000000","message":"please link the patch to the bugreport with the following line:\nCloses-Bug: #1904685","commit_id":"27db3e29012db52fdfcd5476f32ba8999aa32e26"},{"author":{"_account_id":31827,"name":"Jorhson Deng","email":"jorhson_deng@163.com","username":"dengzhaosen"},"change_message_id":"7ebd1c6f5e1dd7a50ca4b4c5fe846eb376a4eb1d","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The instance\u0027s task_state will be in \u0027soft-deleting\u0027 if the nova-compute"},{"line_number":10,"context_line":"is down and we should check this case in _init_instance function."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: I17e9b4af3772f2c2c4e9b3ac4c1e9e662897d1d7"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"fffc6b78_8f08ea28","line":11,"in_reply_to":"fffc6b78_87d0d4cb","updated":"2020-11-24 01:31:27.000000000","message":"\u003e please link the patch to the bugreport with the following line:\n \u003e Closes-Bug: #1904685","commit_id":"27db3e29012db52fdfcd5476f32ba8999aa32e26"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"82c3e80e394602cfefac0257d8b4e8a18512ca24","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Jorhson Deng \u003cdengzhaosen@inspur.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2021-06-25 07:16:17 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"To deal instance with soft-deleting in _init_instance"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The instance\u0027s task_state will be in \u0027soft-deleting\u0027 if the nova-compute"},{"line_number":10,"context_line":"is down and we should check this case in _init_instance function."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":13,"id":"cac594b6_264824cd","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":53},"updated":"2021-06-25 07:33:18.000000000","message":"process instance in soft-deleting task state during _init_instnace","commit_id":"55cea0cdec6ce3be19daa4051acf3f773d705ca1"},{"author":{"_account_id":31827,"name":"Jorhson Deng","email":"jorhson_deng@163.com","username":"dengzhaosen"},"change_message_id":"9ad77e10a57ff755997aed4634ed3e72e3756457","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Jorhson Deng \u003cdengzhaosen@inspur.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2021-06-25 07:16:17 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"To deal instance with soft-deleting in _init_instance"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The instance\u0027s task_state will be in \u0027soft-deleting\u0027 if the nova-compute"},{"line_number":10,"context_line":"is down and we should check this case in _init_instance function."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":13,"id":"1b470e26_11303c12","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":53},"in_reply_to":"cac594b6_264824cd","updated":"2021-12-20 13:25:57.000000000","message":"Done","commit_id":"55cea0cdec6ce3be19daa4051acf3f773d705ca1"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"82c3e80e394602cfefac0257d8b4e8a18512ca24","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"To deal instance with soft-deleting in _init_instance"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The instance\u0027s task_state will be in \u0027soft-deleting\u0027 if the nova-compute"},{"line_number":10,"context_line":"is down and we should check this case in _init_instance function."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Closes-Bug: #1904685"},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":13,"id":"c61e9d0a_8cad454b","line":10,"range":{"start_line":9,"start_character":0,"end_line":10,"end_character":65},"updated":"2021-06-25 07:33:18.000000000","message":"If a host is down when we delete an instance the instance task_state will be \u0027soft-deleting\u0027.\nduring _init_instance we should handle this task state when the host comes back up.","commit_id":"55cea0cdec6ce3be19daa4051acf3f773d705ca1"},{"author":{"_account_id":31827,"name":"Jorhson Deng","email":"jorhson_deng@163.com","username":"dengzhaosen"},"change_message_id":"9ad77e10a57ff755997aed4634ed3e72e3756457","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"To deal instance with soft-deleting in _init_instance"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The instance\u0027s task_state will be in \u0027soft-deleting\u0027 if the nova-compute"},{"line_number":10,"context_line":"is down and we should check this case in _init_instance function."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Closes-Bug: #1904685"},{"line_number":13,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":13,"id":"ae874b89_92999697","line":10,"range":{"start_line":9,"start_character":0,"end_line":10,"end_character":65},"in_reply_to":"c61e9d0a_8cad454b","updated":"2021-12-20 13:25:57.000000000","message":"Done","commit_id":"55cea0cdec6ce3be19daa4051acf3f773d705ca1"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"a36091a31ca7e15d4fc6fc2314ed8613c4b8dde9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":17,"id":"5ba18da4_0d787fc0","updated":"2021-12-20 09:02:00.000000000","message":"Looks good to me but I still have some concern about exception cases.","commit_id":"9071017ba92463c6d11f6b210f045f50cabcc233"}],"nova/compute/manager.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"82c3e80e394602cfefac0257d8b4e8a18512ca24","unresolved":true,"context_lines":[{"line_number":1057,"context_line":"                LOG.info(\u0027Service started soft-deleting the instance during \u0027"},{"line_number":1058,"context_line":"                         \u0027the previous run, but did not finish. Restarting \u0027"},{"line_number":1059,"context_line":"                         \u0027the soft-deletion now.\u0027, instance\u003dinstance)"},{"line_number":1060,"context_line":"                self.soft_delete_instance(context, instance)"},{"line_number":1061,"context_line":"            except Exception:"},{"line_number":1062,"context_line":"                LOG.exception(\u0027Failed to complete a soft-deletion\u0027,"},{"line_number":1063,"context_line":"                              instance\u003dinstance)"}],"source_content_type":"text/x-python","patch_set":13,"id":"5dc63f04_f139399c","line":1060,"range":{"start_line":1060,"start_character":16,"end_line":1060,"end_character":60},"updated":"2021-06-25 07:33:18.000000000","message":"i guess this makes sense the only issue i have with this approach is the vm will like have already elapsed\nthe soft delete interval when the host comes back up so it probably shoudl be deleted imidetly.\n\nwith that said i think this is fine in this case even if it extends the vm lifetime a bit longer.","commit_id":"55cea0cdec6ce3be19daa4051acf3f773d705ca1"},{"author":{"_account_id":31827,"name":"Jorhson Deng","email":"jorhson_deng@163.com","username":"dengzhaosen"},"change_message_id":"9ad77e10a57ff755997aed4634ed3e72e3756457","unresolved":false,"context_lines":[{"line_number":1057,"context_line":"                LOG.info(\u0027Service started soft-deleting the instance during \u0027"},{"line_number":1058,"context_line":"                         \u0027the previous run, but did not finish. Restarting \u0027"},{"line_number":1059,"context_line":"                         \u0027the soft-deletion now.\u0027, instance\u003dinstance)"},{"line_number":1060,"context_line":"                self.soft_delete_instance(context, instance)"},{"line_number":1061,"context_line":"            except Exception:"},{"line_number":1062,"context_line":"                LOG.exception(\u0027Failed to complete a soft-deletion\u0027,"},{"line_number":1063,"context_line":"                              instance\u003dinstance)"}],"source_content_type":"text/x-python","patch_set":13,"id":"503110e2_4ebe2f6b","line":1060,"range":{"start_line":1060,"start_character":16,"end_line":1060,"end_character":60},"in_reply_to":"5dc63f04_f139399c","updated":"2021-12-20 13:25:57.000000000","message":"Done","commit_id":"55cea0cdec6ce3be19daa4051acf3f773d705ca1"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"a36091a31ca7e15d4fc6fc2314ed8613c4b8dde9","unresolved":true,"context_lines":[{"line_number":1060,"context_line":"                LOG.info(\u0027Service started soft-deleting the instance during \u0027"},{"line_number":1061,"context_line":"                         \u0027the previous run, but did not finish. Restarting \u0027"},{"line_number":1062,"context_line":"                         \u0027the soft-deletion now.\u0027, instance\u003dinstance)"},{"line_number":1063,"context_line":"                self.soft_delete_instance(context, instance)"},{"line_number":1064,"context_line":"            except Exception:"},{"line_number":1065,"context_line":"                LOG.exception(\u0027Failed to complete a soft-deletion\u0027,"},{"line_number":1066,"context_line":"                              instance\u003dinstance)"}],"source_content_type":"text/x-python","patch_set":17,"id":"acdefd59_23133bab","line":1063,"updated":"2021-12-20 09:02:00.000000000","message":"AFAIK, for all the in-tree drivers, they just stop the guest when calling this.\nIn theory, there shouldn\u0027t be any blocking calls, but given in libvirt we call _cleanup() when destroying the guest (which is done when stopping by default), we try to disconnect volumes or vpmems so we could have issues.","commit_id":"9071017ba92463c6d11f6b210f045f50cabcc233"},{"author":{"_account_id":31827,"name":"Jorhson Deng","email":"jorhson_deng@163.com","username":"dengzhaosen"},"change_message_id":"9ad77e10a57ff755997aed4634ed3e72e3756457","unresolved":true,"context_lines":[{"line_number":1060,"context_line":"                LOG.info(\u0027Service started soft-deleting the instance during \u0027"},{"line_number":1061,"context_line":"                         \u0027the previous run, but did not finish. Restarting \u0027"},{"line_number":1062,"context_line":"                         \u0027the soft-deletion now.\u0027, instance\u003dinstance)"},{"line_number":1063,"context_line":"                self.soft_delete_instance(context, instance)"},{"line_number":1064,"context_line":"            except Exception:"},{"line_number":1065,"context_line":"                LOG.exception(\u0027Failed to complete a soft-deletion\u0027,"},{"line_number":1066,"context_line":"                              instance\u003dinstance)"}],"source_content_type":"text/x-python","patch_set":17,"id":"b289b859_1f4794a8","line":1063,"in_reply_to":"acdefd59_23133bab","updated":"2021-12-20 13:25:57.000000000","message":"Yeah, if the nova-compute service is up, the problem maybe not exists. If the nova-compute service is down, and we soft deleting the instance without knowing that, the instance maybe have the task-state, and I think we should deal with this case.","commit_id":"9071017ba92463c6d11f6b210f045f50cabcc233"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"a36091a31ca7e15d4fc6fc2314ed8613c4b8dde9","unresolved":true,"context_lines":[{"line_number":1063,"context_line":"                self.soft_delete_instance(context, instance)"},{"line_number":1064,"context_line":"            except Exception:"},{"line_number":1065,"context_line":"                LOG.exception(\u0027Failed to complete a soft-deletion\u0027,"},{"line_number":1066,"context_line":"                              instance\u003dinstance)"},{"line_number":1067,"context_line":"            return"},{"line_number":1068,"context_line":""},{"line_number":1069,"context_line":"        current_power_state \u003d self._get_power_state(instance)"}],"source_content_type":"text/x-python","patch_set":17,"id":"5e9938f3_1ed2df02","line":1066,"updated":"2021-12-20 09:02:00.000000000","message":"... so, here in case we would have cleanup issues when destroying the instance, maybe we should set the instance to ERROR like we do with the above for DELETING task state.","commit_id":"9071017ba92463c6d11f6b210f045f50cabcc233"},{"author":{"_account_id":31827,"name":"Jorhson Deng","email":"jorhson_deng@163.com","username":"dengzhaosen"},"change_message_id":"9ad77e10a57ff755997aed4634ed3e72e3756457","unresolved":false,"context_lines":[{"line_number":1063,"context_line":"                self.soft_delete_instance(context, instance)"},{"line_number":1064,"context_line":"            except Exception:"},{"line_number":1065,"context_line":"                LOG.exception(\u0027Failed to complete a soft-deletion\u0027,"},{"line_number":1066,"context_line":"                              instance\u003dinstance)"},{"line_number":1067,"context_line":"            return"},{"line_number":1068,"context_line":""},{"line_number":1069,"context_line":"        current_power_state \u003d self._get_power_state(instance)"}],"source_content_type":"text/x-python","patch_set":17,"id":"69c56763_1d86d644","line":1066,"in_reply_to":"5e9938f3_1ed2df02","updated":"2021-12-20 13:25:57.000000000","message":"Done","commit_id":"9071017ba92463c6d11f6b210f045f50cabcc233"}],"nova/tests/unit/compute/test_compute.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"ce708f05745dd0af0388c1bb58e1bf1c86f63372","unresolved":false,"context_lines":[{"line_number":7909,"context_line":""},{"line_number":7910,"context_line":"        mock_complete.assert_called_once_with(admin_context, instance)"},{"line_number":7911,"context_line":""},{"line_number":7912,"context_line":"    def test_init_instance_for_partial_deletion(self):"},{"line_number":7913,"context_line":"        admin_context \u003d context.get_admin_context()"},{"line_number":7914,"context_line":"        instance \u003d objects.Instance(admin_context)"},{"line_number":7915,"context_line":"        instance.id \u003d 1"}],"source_content_type":"text/x-python","patch_set":3,"id":"1f621f24_40502d0b","line":7912,"updated":"2020-11-04 07:32:50.000000000","message":"pep8: F811 redefinition of unused \u0027test_init_instance_for_partial_deletion\u0027 from line 7879","commit_id":"d2a127ee9cad44aa11b11f75bc6c280f5214abf8"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"abac20bc7adb1c012d5d3407b1cea8bf84d604c1","unresolved":false,"context_lines":[{"line_number":7918,"context_line":"        instance.deleted \u003d False"},{"line_number":7919,"context_line":"        instance.task_state \u003d task_states.SOFT_DELETING"},{"line_number":7920,"context_line":"        instance.host \u003d self.compute.host"},{"line_number":7921,"context_line":"        "},{"line_number":7922,"context_line":"        def fake_partial_soft_deletion(self, context, instance):"},{"line_number":7923,"context_line":"            instance.vm_state \u003d vm_states.SOFT_DELETED"},{"line_number":7924,"context_line":"            instance.task_state \u003d None"}],"source_content_type":"text/x-python","patch_set":7,"id":"1f621f24_8e169348","line":7921,"updated":"2020-11-12 09:46:07.000000000","message":"pep8: W293 blank line contains whitespace","commit_id":"c67c8d8fdecd6129dc5d66f3474b8f6e4d669b5d"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"f352aeecd41416c4099c6f77ee0e12d66ccdb4f2","unresolved":true,"context_lines":[{"line_number":7929,"context_line":""},{"line_number":7930,"context_line":"        self.compute._init_instance(admin_context, instance)"},{"line_number":7931,"context_line":""},{"line_number":7932,"context_line":"        self.assertEqual(\u0027soft-delete\u0027, instance[\u0027vm_state\u0027])"},{"line_number":7933,"context_line":"        self.assertEqual(0, instance[\u0027deleted\u0027])"},{"line_number":7934,"context_line":""},{"line_number":7935,"context_line":"    def test_add_remove_fixed_ip_updates_instance_updated_at(self):"},{"line_number":7936,"context_line":"        def _noop(*args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":11,"id":"7715eed6_b181cf46","line":7933,"range":{"start_line":7932,"start_character":0,"end_line":7933,"end_character":48},"updated":"2021-01-04 09:36:44.000000000","message":"I would rather assert that the soft_delete_instance method was called.","commit_id":"e1532dcbd5b12ffbaf0c752e3c0d26153d9c2edb"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"82c3e80e394602cfefac0257d8b4e8a18512ca24","unresolved":true,"context_lines":[{"line_number":7859,"context_line":""},{"line_number":7860,"context_line":"        self.compute._init_instance(admin_context, instance)"},{"line_number":7861,"context_line":"        self.compute.soft_delete_instance.assert_called_once_with("},{"line_number":7862,"context_line":"            admin_context, instance)"},{"line_number":7863,"context_line":""},{"line_number":7864,"context_line":"    def test_add_remove_fixed_ip_updates_instance_updated_at(self):"},{"line_number":7865,"context_line":"        def _noop(*args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":13,"id":"5ba01bcc_a3848530","line":7862,"updated":"2021-06-25 07:33:18.000000000","message":"you should also assert the state of the instance at this point.\nyou are expecting it to to be  vm_states.SOFT_DELETED and  instance.task_state \u003d\u003d None","commit_id":"55cea0cdec6ce3be19daa4051acf3f773d705ca1"},{"author":{"_account_id":31827,"name":"Jorhson Deng","email":"jorhson_deng@163.com","username":"dengzhaosen"},"change_message_id":"9ad77e10a57ff755997aed4634ed3e72e3756457","unresolved":false,"context_lines":[{"line_number":7859,"context_line":""},{"line_number":7860,"context_line":"        self.compute._init_instance(admin_context, instance)"},{"line_number":7861,"context_line":"        self.compute.soft_delete_instance.assert_called_once_with("},{"line_number":7862,"context_line":"            admin_context, instance)"},{"line_number":7863,"context_line":""},{"line_number":7864,"context_line":"    def test_add_remove_fixed_ip_updates_instance_updated_at(self):"},{"line_number":7865,"context_line":"        def _noop(*args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":13,"id":"811661c7_233a3299","line":7862,"in_reply_to":"1e619283_3eb99807","updated":"2021-12-20 13:25:57.000000000","message":"Done","commit_id":"55cea0cdec6ce3be19daa4051acf3f773d705ca1"},{"author":{"_account_id":31827,"name":"Jorhson Deng","email":"jorhson_deng@163.com","username":"dengzhaosen"},"change_message_id":"9ad77e10a57ff755997aed4634ed3e72e3756457","unresolved":false,"context_lines":[{"line_number":7859,"context_line":""},{"line_number":7860,"context_line":"        self.compute._init_instance(admin_context, instance)"},{"line_number":7861,"context_line":"        self.compute.soft_delete_instance.assert_called_once_with("},{"line_number":7862,"context_line":"            admin_context, instance)"},{"line_number":7863,"context_line":""},{"line_number":7864,"context_line":"    def test_add_remove_fixed_ip_updates_instance_updated_at(self):"},{"line_number":7865,"context_line":"        def _noop(*args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":13,"id":"e217668c_96661fa0","line":7862,"in_reply_to":"1e619283_3eb99807","updated":"2021-12-20 13:25:57.000000000","message":"Done","commit_id":"55cea0cdec6ce3be19daa4051acf3f773d705ca1"},{"author":{"_account_id":31827,"name":"Jorhson Deng","email":"jorhson_deng@163.com","username":"dengzhaosen"},"change_message_id":"1c99e0e22c680b80b696598bd0a687960030334d","unresolved":true,"context_lines":[{"line_number":7859,"context_line":""},{"line_number":7860,"context_line":"        self.compute._init_instance(admin_context, instance)"},{"line_number":7861,"context_line":"        self.compute.soft_delete_instance.assert_called_once_with("},{"line_number":7862,"context_line":"            admin_context, instance)"},{"line_number":7863,"context_line":""},{"line_number":7864,"context_line":"    def test_add_remove_fixed_ip_updates_instance_updated_at(self):"},{"line_number":7865,"context_line":"        def _noop(*args, **kwargs):"}],"source_content_type":"text/x-python","patch_set":13,"id":"1e619283_3eb99807","line":7862,"in_reply_to":"5ba01bcc_a3848530","updated":"2021-06-25 07:44:40.000000000","message":"yeah，I use the formal in the first, and I changed as Lee Yarwood comments.","commit_id":"55cea0cdec6ce3be19daa4051acf3f773d705ca1"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"a36091a31ca7e15d4fc6fc2314ed8613c4b8dde9","unresolved":true,"context_lines":[{"line_number":7931,"context_line":""},{"line_number":7932,"context_line":"        self.assertEqual(\u0027soft-delete\u0027, instance[\u0027vm_state\u0027])"},{"line_number":7933,"context_line":"        self.assertEqual(0, instance[\u0027deleted\u0027])"},{"line_number":7934,"context_line":""},{"line_number":7935,"context_line":"    def test_add_remove_fixed_ip_updates_instance_updated_at(self):"},{"line_number":7936,"context_line":"        def _noop(*args, **kwargs):"},{"line_number":7937,"context_line":"            pass"}],"source_content_type":"text/x-python","patch_set":17,"id":"2031c8d3_fac5c9ed","line":7934,"updated":"2021-12-20 09:02:00.000000000","message":"it lacks the case when soft-deleting gets an exception when called.","commit_id":"9071017ba92463c6d11f6b210f045f50cabcc233"},{"author":{"_account_id":31827,"name":"Jorhson Deng","email":"jorhson_deng@163.com","username":"dengzhaosen"},"change_message_id":"9ad77e10a57ff755997aed4634ed3e72e3756457","unresolved":false,"context_lines":[{"line_number":7931,"context_line":""},{"line_number":7932,"context_line":"        self.assertEqual(\u0027soft-delete\u0027, instance[\u0027vm_state\u0027])"},{"line_number":7933,"context_line":"        self.assertEqual(0, instance[\u0027deleted\u0027])"},{"line_number":7934,"context_line":""},{"line_number":7935,"context_line":"    def test_add_remove_fixed_ip_updates_instance_updated_at(self):"},{"line_number":7936,"context_line":"        def _noop(*args, **kwargs):"},{"line_number":7937,"context_line":"            pass"}],"source_content_type":"text/x-python","patch_set":17,"id":"1712a125_298f5f10","line":7934,"in_reply_to":"2031c8d3_fac5c9ed","updated":"2021-12-20 13:25:57.000000000","message":"Done","commit_id":"9071017ba92463c6d11f6b210f045f50cabcc233"}],"releasenotes/notes/bug-1904685-0cc7de14452d99f0.yaml":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"82c3e80e394602cfefac0257d8b4e8a18512ca24","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The instance\u0027s task_state will be in ``soft-deleting`` if the nova-compute"},{"line_number":5,"context_line":"    is down if we do the soft-delete operation, and we should check this case"},{"line_number":6,"context_line":"    in init_host function."},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"    .. _bug 1904685: https://bugs.launchpad.net/nova/+bug/1904685"}],"source_content_type":"text/x-yaml","patch_set":13,"id":"11c81a2e_c2eed4e7","line":6,"range":{"start_line":4,"start_character":3,"end_line":6,"end_character":26},"updated":"2021-06-25 07:33:18.000000000","message":"If a host is down when a vm is soft deleted it was not properly handled when\nthe host was brought up. This is not addressed and the compute agent will\nresume soft deleting the instances when the agent starts. see: `bug 1904685`_","commit_id":"55cea0cdec6ce3be19daa4051acf3f773d705ca1"},{"author":{"_account_id":31827,"name":"Jorhson Deng","email":"jorhson_deng@163.com","username":"dengzhaosen"},"change_message_id":"9ad77e10a57ff755997aed4634ed3e72e3756457","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The instance\u0027s task_state will be in ``soft-deleting`` if the nova-compute"},{"line_number":5,"context_line":"    is down if we do the soft-delete operation, and we should check this case"},{"line_number":6,"context_line":"    in init_host function."},{"line_number":7,"context_line":""},{"line_number":8,"context_line":"    .. _bug 1904685: https://bugs.launchpad.net/nova/+bug/1904685"}],"source_content_type":"text/x-yaml","patch_set":13,"id":"3394fb6f_68d286e9","line":6,"range":{"start_line":4,"start_character":3,"end_line":6,"end_character":26},"in_reply_to":"11c81a2e_c2eed4e7","updated":"2021-12-20 13:25:57.000000000","message":"Done","commit_id":"55cea0cdec6ce3be19daa4051acf3f773d705ca1"}]}
