)]}'
{"nova/tests/unit/virt/libvirt/test_driver.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"7ddffc2fe01aae6746c15c0b764979b2c42248c4","unresolved":false,"context_lines":[{"line_number":1657,"context_line":"        service.compute_node \u003d objects.ComputeNode(uuid\u003duuids.rp_uuid)"},{"line_number":1658,"context_line":"        drvr._update_compute_provider_status(ctxt, service)"},{"line_number":1659,"context_line":"        virtapi.update_compute_provider_status.assert_called_once_with("},{"line_number":1660,"context_line":"            ctxt, uuids.rp_uuid, enabled\u003dnot service.disabled)"},{"line_number":1661,"context_line":""},{"line_number":1662,"context_line":"    def test_update_compute_provider_status_swallows_exceptions(self):"},{"line_number":1663,"context_line":"        \"\"\"Tests error path handling in _update_compute_provider_status\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"7faddb67_09e61718","line":1660,"range":{"start_line":1660,"start_character":32,"end_line":1660,"end_character":61},"updated":"2019-07-04 18:58:07.000000000","message":"as noted in https://review.opendev.org/#/c/668706/1/nova/virt/virtapi.py we could avoid the negation if we made the kwarg disabled.\n\nbut otherwise this all looks fine to me.","commit_id":"9b99be44cdd116b973667ca001cb38896f34f451"}],"nova/virt/libvirt/driver.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"c0fef5d859a4dadbb1afffca59a51650a30bf974","unresolved":false,"context_lines":[{"line_number":3919,"context_line":"                \u0027An error occurred while updating compute node \u0027"},{"line_number":3920,"context_line":"                \u0027resource provider status to \"%s\" for provider: %s\u0027,"},{"line_number":3921,"context_line":"                \u0027disabled\u0027 if service.disabled else \u0027enabled\u0027,"},{"line_number":3922,"context_line":"                rp_uuid or service.host, exc_info\u003dTrue)"},{"line_number":3923,"context_line":""},{"line_number":3924,"context_line":"    def _set_host_enabled(self, enabled,"},{"line_number":3925,"context_line":"                          disable_reason\u003dDISABLE_REASON_UNDEFINED):"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fb8cfa7_39500d5f","line":3922,"updated":"2019-07-03 10:13:40.000000000","message":"Do we want to retry? If libvirt connection recovered but placement wasn\u0027t updated due to an intermittent fault then the compute remain unusable as the pre-filter will filter it out, while the service update already persisted in the db that the service is usable. \n\nEven better, do we want to rollback the service update done at L3957 if the placement update fails?","commit_id":"9b99be44cdd116b973667ca001cb38896f34f451"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"7ddffc2fe01aae6746c15c0b764979b2c42248c4","unresolved":false,"context_lines":[{"line_number":3919,"context_line":"                \u0027An error occurred while updating compute node \u0027"},{"line_number":3920,"context_line":"                \u0027resource provider status to \"%s\" for provider: %s\u0027,"},{"line_number":3921,"context_line":"                \u0027disabled\u0027 if service.disabled else \u0027enabled\u0027,"},{"line_number":3922,"context_line":"                rp_uuid or service.host, exc_info\u003dTrue)"},{"line_number":3923,"context_line":""},{"line_number":3924,"context_line":"    def _set_host_enabled(self, enabled,"},{"line_number":3925,"context_line":"                          disable_reason\u003dDISABLE_REASON_UNDEFINED):"}],"source_content_type":"text/x-python","patch_set":1,"id":"7faddb67_490e4fe6","line":3922,"in_reply_to":"7faddb67_ef72b1e3","updated":"2019-07-04 18:58:07.000000000","message":"specifically \nhttps://review.opendev.org/#/c/668986/1/nova/virt/libvirt/driver.py@3918\nbut yes that is a good improvement.","commit_id":"9b99be44cdd116b973667ca001cb38896f34f451"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"68499a31b33e841f07237bbc46bf85a615ebe88f","unresolved":false,"context_lines":[{"line_number":3919,"context_line":"                \u0027An error occurred while updating compute node \u0027"},{"line_number":3920,"context_line":"                \u0027resource provider status to \"%s\" for provider: %s\u0027,"},{"line_number":3921,"context_line":"                \u0027disabled\u0027 if service.disabled else \u0027enabled\u0027,"},{"line_number":3922,"context_line":"                rp_uuid or service.host, exc_info\u003dTrue)"},{"line_number":3923,"context_line":""},{"line_number":3924,"context_line":"    def _set_host_enabled(self, enabled,"},{"line_number":3925,"context_line":"                          disable_reason\u003dDISABLE_REASON_UNDEFINED):"}],"source_content_type":"text/x-python","patch_set":1,"id":"7faddb67_ef72b1e3","line":3922,"in_reply_to":"9fb8cfa7_1310824f","updated":"2019-07-03 19:58:14.000000000","message":"Done: https://review.opendev.org/#/c/668986/","commit_id":"9b99be44cdd116b973667ca001cb38896f34f451"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"ab8d33721ce0a0048262d07ab0d7522df1238be3","unresolved":false,"context_lines":[{"line_number":3919,"context_line":"                \u0027An error occurred while updating compute node \u0027"},{"line_number":3920,"context_line":"                \u0027resource provider status to \"%s\" for provider: %s\u0027,"},{"line_number":3921,"context_line":"                \u0027disabled\u0027 if service.disabled else \u0027enabled\u0027,"},{"line_number":3922,"context_line":"                rp_uuid or service.host, exc_info\u003dTrue)"},{"line_number":3923,"context_line":""},{"line_number":3924,"context_line":"    def _set_host_enabled(self, enabled,"},{"line_number":3925,"context_line":"                          disable_reason\u003dDISABLE_REASON_UNDEFINED):"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fb8cfa7_7c43d314","line":3922,"in_reply_to":"9fb8cfa7_39500d5f","updated":"2019-07-03 10:36:52.000000000","message":"//later//\nOK I realized that the periodic task update_available_resource will re-sync the trait within 60 seconds, even if this code fails. So I guess it is OK to just log. Maybe the commit message or a code comment could mention that such re-sync exists.","commit_id":"9b99be44cdd116b973667ca001cb38896f34f451"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"3c3b6f5959368f28427f94a48ea098ff078f317b","unresolved":false,"context_lines":[{"line_number":3919,"context_line":"                \u0027An error occurred while updating compute node \u0027"},{"line_number":3920,"context_line":"                \u0027resource provider status to \"%s\" for provider: %s\u0027,"},{"line_number":3921,"context_line":"                \u0027disabled\u0027 if service.disabled else \u0027enabled\u0027,"},{"line_number":3922,"context_line":"                rp_uuid or service.host, exc_info\u003dTrue)"},{"line_number":3923,"context_line":""},{"line_number":3924,"context_line":"    def _set_host_enabled(self, enabled,"},{"line_number":3925,"context_line":"                          disable_reason\u003dDISABLE_REASON_UNDEFINED):"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fb8cfa7_1310824f","line":3922,"in_reply_to":"9fb8cfa7_7c43d314","updated":"2019-07-03 14:22:10.000000000","message":"Yeah a code comment would be good to remind that this is best effort and the resource tracker will sync it on restart and periodically. I can add that if I need to respin or start a FUP patch.","commit_id":"9b99be44cdd116b973667ca001cb38896f34f451"}]}
