)]}'
{"horizon/horizon/dashboards/nova/access_and_security/views.py":[{"author":{"_account_id":357,"name":"Devin Carlen","email":"devin@openstack.org","username":"devcamcar"},"change_message_id":"c9a4dcd6963c8dc94643d124fe5ede2681347678","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    except Exception, e:"},{"line_number":64,"context_line":"        keypairs \u003d []"},{"line_number":65,"context_line":"        LOG.exception(\"Exception in keypair index\")"},{"line_number":66,"context_line":"        messages.error(request, _(\u0027Error fetching keypairs: %s\u0027) % e.message)"},{"line_number":67,"context_line":"    keypairs_table \u003d KeypairsTable(request, keypairs)"},{"line_number":68,"context_line":"    handled \u003d keypairs_table.maybe_handle()"},{"line_number":69,"context_line":"    if handled:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAD3%2F%2F%2FyI%3D","line":66,"updated":"2012-01-09 17:44:02.000000000","message":"Typically you should only pass an error message up to the user if you know it\u0027s a sane/human friendly string. It\u0027s not possible to ensure that when catching Exception (eg \"OSError 13\", etc).\n\nSo unless you know what you\u0027d be delivering, the message should be made more generic \"Key pair list is currently unavailable\" etc.","commit_id":"2e557fa65b369ef13396fd31986f843fa7ebcdcc"},{"author":{"_account_id":1816,"name":"Gabriel Hurley","email":"gabriel.hurley@nebula.com","username":"gabriel-hurley"},"change_message_id":"ce2aae3a27831cf0c7086a1b1d1e41116525d2a8","unresolved":false,"context_lines":[{"line_number":63,"context_line":"    except Exception, e:"},{"line_number":64,"context_line":"        keypairs \u003d []"},{"line_number":65,"context_line":"        LOG.exception(\"Exception in keypair index\")"},{"line_number":66,"context_line":"        messages.error(request, _(\u0027Error fetching keypairs: %s\u0027) % e.message)"},{"line_number":67,"context_line":"    keypairs_table \u003d KeypairsTable(request, keypairs)"},{"line_number":68,"context_line":"    handled \u003d keypairs_table.maybe_handle()"},{"line_number":69,"context_line":"    if handled:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAD3%2F%2F%2Fug%3D","line":66,"in_reply_to":"AAAAD3%2F%2F%2FyI%3D","updated":"2012-01-09 19:51:43.000000000","message":"Okay. This was pre-existing code and is gonna get reworked when we do a cleanup on all the error handling, but I can clean it up in this spot now.\n\nThe only difference is that it was originally catching only novaclient\u0027s ClientException which is far from the only exception that can be raised inside that code and otherwise it will result in a 500 error to the end user.\n\nAgain, this is all going to be reworked in the implementation of the error handling blueprint, though.","commit_id":"2e557fa65b369ef13396fd31986f843fa7ebcdcc"}]}
