)]}'
{"nova/compute/api.py":[{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"39935357937e547ac040184a11ace004a231e1d9","unresolved":false,"context_lines":[{"line_number":5085,"context_line":""},{"line_number":5086,"context_line":"    def get_instance_metadata(self, context, instance):"},{"line_number":5087,"context_line":"        \"\"\"Get all metadata associated with an instance.\"\"\""},{"line_number":5088,"context_line":"        return db.instance_metadata_get(context, instance.uuid)"},{"line_number":5089,"context_line":""},{"line_number":5090,"context_line":"    @check_instance_lock"},{"line_number":5091,"context_line":"    @check_instance_state(vm_state\u003d[vm_states.ACTIVE, vm_states.PAUSED,"}],"source_content_type":"text/x-python","patch_set":4,"id":"56d4b641_67d55dfa","line":5088,"range":{"start_line":5088,"start_character":15,"end_line":5088,"end_character":63},"updated":"2021-06-17 08:33:24.000000000","message":"Would it be worth replacing these direct calls with something via o.vo in the future?","commit_id":"7ab2947720ce777a152dc8d2886ddc831f1756b9"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"05337f7d2b1dfd407409d3bc9a20eb56d5bc59dc","unresolved":false,"context_lines":[{"line_number":5085,"context_line":""},{"line_number":5086,"context_line":"    def get_instance_metadata(self, context, instance):"},{"line_number":5087,"context_line":"        \"\"\"Get all metadata associated with an instance.\"\"\""},{"line_number":5088,"context_line":"        return db.instance_metadata_get(context, instance.uuid)"},{"line_number":5089,"context_line":""},{"line_number":5090,"context_line":"    @check_instance_lock"},{"line_number":5091,"context_line":"    @check_instance_state(vm_state\u003d[vm_states.ACTIVE, vm_states.PAUSED,"}],"source_content_type":"text/x-python","patch_set":4,"id":"091f7406_d061ebdf","line":5088,"range":{"start_line":5088,"start_character":15,"end_line":5088,"end_character":63},"in_reply_to":"11f1822b_08690572","updated":"2021-06-17 10:26:10.000000000","message":"Okay, I think this was because the instance_metadata table isn\u0027t necessarily joined, so by doing \u0027Instance.metadata\u0027 instead I\u0027d have to be ensure all paths leading here loaded the object with \u0027expected_attrs\u0027 configured to include \u0027metadata\u0027","commit_id":"7ab2947720ce777a152dc8d2886ddc831f1756b9"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0ce7c4168b2890b356c1ea7b2f7ee3a40c7ecc73","unresolved":true,"context_lines":[{"line_number":5085,"context_line":""},{"line_number":5086,"context_line":"    def get_instance_metadata(self, context, instance):"},{"line_number":5087,"context_line":"        \"\"\"Get all metadata associated with an instance.\"\"\""},{"line_number":5088,"context_line":"        return db.instance_metadata_get(context, instance.uuid)"},{"line_number":5089,"context_line":""},{"line_number":5090,"context_line":"    @check_instance_lock"},{"line_number":5091,"context_line":"    @check_instance_state(vm_state\u003d[vm_states.ACTIVE, vm_states.PAUSED,"}],"source_content_type":"text/x-python","patch_set":4,"id":"11f1822b_08690572","line":5088,"range":{"start_line":5088,"start_character":15,"end_line":5088,"end_character":63},"in_reply_to":"56d4b641_67d55dfa","updated":"2021-06-17 10:17:22.000000000","message":"I have a vague recollection of trying to do this and being unable to do so, for some reason (the idea also appealed to me, as this is one of the few direct uses of the DB APIs). I\u0027ll try again","commit_id":"7ab2947720ce777a152dc8d2886ddc831f1756b9"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"05337f7d2b1dfd407409d3bc9a20eb56d5bc59dc","unresolved":false,"context_lines":[{"line_number":5967,"context_line":"        \"\"\""},{"line_number":5968,"context_line":"        return db.task_log_get_all("},{"line_number":5969,"context_line":"            context, task_name, period_beginning, period_ending, host\u003dhost,"},{"line_number":5970,"context_line":"            state\u003dstate)"},{"line_number":5971,"context_line":""},{"line_number":5972,"context_line":"    def compute_node_get(self, context, compute_id):"},{"line_number":5973,"context_line":"        \"\"\"Return compute node entry for particular integer ID or UUID.\"\"\""}],"source_content_type":"text/x-python","patch_set":4,"id":"24f6a579_e9ba4140","line":5970,"updated":"2021-06-17 10:26:10.000000000","message":"I can\u0027t convert this one because it expects a plain old dict back instead of an ovo. It seems silly to build an ovo only to deconstruct it again shortly after","commit_id":"7ab2947720ce777a152dc8d2886ddc831f1756b9"}]}
