)]}'
{"nova/conductor/manager.py":[{"author":{"_account_id":5292,"name":"Christopher Yeoh","email":"cbkyeoh@gmail.com","username":"cyeoh-0"},"change_message_id":"5e830aaf2670fe4013df313bf54ab65effcd045e","unresolved":false,"context_lines":[{"line_number":447,"context_line":"        return jsonutils.to_primitive(result)"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"    @messaging.expected_exceptions(exception.InstanceActionNotFound,"},{"line_number":450,"context_line":"                                   exception.InstanceActionEventNotFound)"},{"line_number":451,"context_line":"    def action_event_start(self, context, values):"},{"line_number":452,"context_line":"        evt \u003d self.db.action_event_start(context, values)"},{"line_number":453,"context_line":"        return jsonutils.to_primitive(evt)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F%2BQMs%3D","line":450,"updated":"2014-03-28 03:23:06.000000000","message":"I don\u0027t think you can get InstanceActionEventNotFound from action_event_start, only from action_event_finish","commit_id":"c40571448e026c259177255a9ff7c7870fca502a"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"535580a9ca0268958a438dcb1278b5cec14bc0ff","unresolved":false,"context_lines":[{"line_number":447,"context_line":"        return jsonutils.to_primitive(result)"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"    @messaging.expected_exceptions(exception.InstanceActionNotFound,"},{"line_number":450,"context_line":"                                   exception.InstanceActionEventNotFound)"},{"line_number":451,"context_line":"    def action_event_start(self, context, values):"},{"line_number":452,"context_line":"        evt \u003d self.db.action_event_start(context, values)"},{"line_number":453,"context_line":"        return jsonutils.to_primitive(evt)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F%2BMxI%3D","line":450,"in_reply_to":"AAAAWH%2F%2BNRU%3D","updated":"2014-03-28 13:33:47.000000000","message":"Ah, yep. Just for the record, having this over-spec\u0027d is really not a problem as it just controls what gets logged against conductor instead of being logged against the conductor *and* the caller.\n\nHowever, getting it right is obviously ... right :)","commit_id":"c40571448e026c259177255a9ff7c7870fca502a"},{"author":{"_account_id":5441,"name":"Andrew Laski","email":"andrew@lascii.com","username":"alaski"},"change_message_id":"a2ea9235ccc06d4b43746f9b29ef3f7c83ff94a4","unresolved":false,"context_lines":[{"line_number":447,"context_line":"        return jsonutils.to_primitive(result)"},{"line_number":448,"context_line":""},{"line_number":449,"context_line":"    @messaging.expected_exceptions(exception.InstanceActionNotFound,"},{"line_number":450,"context_line":"                                   exception.InstanceActionEventNotFound)"},{"line_number":451,"context_line":"    def action_event_start(self, context, values):"},{"line_number":452,"context_line":"        evt \u003d self.db.action_event_start(context, values)"},{"line_number":453,"context_line":"        return jsonutils.to_primitive(evt)"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAAWH%2F%2BNRU%3D","line":450,"in_reply_to":"AAAAWH%2F%2BQMs%3D","updated":"2014-03-28 12:19:26.000000000","message":"That is correct.  Either can raise InstanceActionNotFound, which is a bit strange now that I think about it, but only finish depends on finding an instance action event.","commit_id":"c40571448e026c259177255a9ff7c7870fca502a"}]}
