)]}'
{"neutron/plugins/ml2/drivers/openvswitch/agent/openflow/native/ovs_ryuapp.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"4f0f1e0cef789b9683fa6696f05c08b5f5bed48e","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    try:"},{"line_number":41,"context_line":"        ovs_agent.main(bridge_classes)"},{"line_number":42,"context_line":"    except Exception:"},{"line_number":43,"context_line":"        with excutils.save_and_reraise_exception():"},{"line_number":44,"context_line":"            LOG.exception(_LE(\"Agent main thread died of an exception\"))"},{"line_number":45,"context_line":"    finally:"},{"line_number":46,"context_line":"        # The following call terminates Ryu\u0027s AppManager.run_apps(),"}],"source_content_type":"text/x-python","patch_set":1,"id":"df140735_0de0fc95","line":43,"range":{"start_line":43,"start_character":8,"end_line":43,"end_character":51},"updated":"2017-05-31 08:29:34.000000000","message":"Just one question: is not enough to send the exception message (not to raise it) and let the process be closed (L50)?\n\nWith L69 you are allowing the Ryu agent to raise the exceptions. This wrapper could just send the message and then close it gracefully. systemd will restart the agent again.","commit_id":"f79ce2d272e88efd983ca24e4fdeef8e072a3446"},{"author":{"_account_id":9656,"name":"Ihar Hrachyshka","email":"ihrachys@redhat.com","username":"ihrachys","status":"Red Hat Networking Systems Engineer"},"change_message_id":"2ab757cca46c68aa40af04fd2a8196ced909276d","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    try:"},{"line_number":41,"context_line":"        ovs_agent.main(bridge_classes)"},{"line_number":42,"context_line":"    except Exception:"},{"line_number":43,"context_line":"        with excutils.save_and_reraise_exception():"},{"line_number":44,"context_line":"            LOG.exception(_LE(\"Agent main thread died of an exception\"))"},{"line_number":45,"context_line":"    finally:"},{"line_number":46,"context_line":"        # The following call terminates Ryu\u0027s AppManager.run_apps(),"}],"source_content_type":"text/x-python","patch_set":1,"id":"df140735_63d54043","line":43,"range":{"start_line":43,"start_character":8,"end_line":43,"end_character":51},"in_reply_to":"df140735_0de0fc95","updated":"2017-05-31 14:01:00.000000000","message":"If the agent won\u0027t return a non-zero return code, systemd won\u0027t restart it. Merely returning 1 from here doesn\u0027t affect the result of the process.","commit_id":"f79ce2d272e88efd983ca24e4fdeef8e072a3446"},{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"166e7e1f7545426863db6fa34a2229b200ec480f","unresolved":false,"context_lines":[{"line_number":40,"context_line":"    try:"},{"line_number":41,"context_line":"        ovs_agent.main(bridge_classes)"},{"line_number":42,"context_line":"    except Exception:"},{"line_number":43,"context_line":"        with excutils.save_and_reraise_exception():"},{"line_number":44,"context_line":"            LOG.exception(_LE(\"Agent main thread died of an exception\"))"},{"line_number":45,"context_line":"    finally:"},{"line_number":46,"context_line":"        # The following call terminates Ryu\u0027s AppManager.run_apps(),"}],"source_content_type":"text/x-python","patch_set":1,"id":"df140735_e3f390e6","line":43,"range":{"start_line":43,"start_character":8,"end_line":43,"end_character":51},"in_reply_to":"df140735_63d54043","updated":"2017-05-31 14:03:26.000000000","message":"You are right. Thaks for the explanation.","commit_id":"f79ce2d272e88efd983ca24e4fdeef8e072a3446"}]}
