)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"306d5d454c34a329ce48eaa93bb9a74e05d68ee9","unresolved":false,"context_lines":[{"line_number":10,"context_line":"raised from a test.  This didn\u0027t actually break the test, but it threw"},{"line_number":11,"context_line":"me off for a little bit.  I had done something to break this test, so"},{"line_number":12,"context_line":"when I went to look at why, there was an exception logged because of this"},{"line_number":13,"context_line":"mistake, which wasn\u0027t realted to what the real problem was.  To avoid"},{"line_number":14,"context_line":"this unnecessarily making it into the test log, pass some stuff so that"},{"line_number":15,"context_line":"building the exception message succeeds."},{"line_number":16,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"AAAAMH%2F%2Ft0c%3D","line":13,"updated":"2012-11-28 22:57:09.000000000","message":"femtonit: \"related\"","commit_id":"b0997eadd237b2244568a27c0f34d66f661f4f04"}],"nova/tests/test_xenapi.py":[{"author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"change_message_id":"306d5d454c34a329ce48eaa93bb9a74e05d68ee9","unresolved":false,"context_lines":[{"line_number":2335,"context_line":"        \"\"\"Ensure the undo operation works correctly on add.\"\"\""},{"line_number":2336,"context_line":"        def fake_driver_add_to_aggregate(context, aggregate, host, **_ignore):"},{"line_number":2337,"context_line":"            msgvars \u003d dict(aggregate_id\u003d\u0027\u0027, action\u003d\u0027\u0027, reason\u003d\u0027\u0027)"},{"line_number":2338,"context_line":"            raise exception.AggregateError(**msgvars)"},{"line_number":2339,"context_line":"        self.stubs.Set(self.compute.driver, \"add_to_aggregate\","},{"line_number":2340,"context_line":"                       fake_driver_add_to_aggregate)"},{"line_number":2341,"context_line":"        metadata \u003d {pool_states.POOL_FLAG: \"XenAPI\","}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAMH%2F%2Ft0U%3D","line":2338,"updated":"2012-11-28 22:57:09.000000000","message":"You *could* have just as easily passed them directly to AggregateError, i.e.:\n\n    raise exception.AggregateError(\n        aggregate_id\u003d\u0027\u0027, action\u003d\u0027\u0027, reason\u003d\u0027\u0027)","commit_id":"b0997eadd237b2244568a27c0f34d66f661f4f04"},{"author":{"_account_id":1561,"name":"Russell Bryant","email":"rbryant@redhat.com","username":"russellb"},"change_message_id":"b2d27256ce2215ddb9adc94fd21c78564885dabd","unresolved":false,"context_lines":[{"line_number":2335,"context_line":"        \"\"\"Ensure the undo operation works correctly on add.\"\"\""},{"line_number":2336,"context_line":"        def fake_driver_add_to_aggregate(context, aggregate, host, **_ignore):"},{"line_number":2337,"context_line":"            msgvars \u003d dict(aggregate_id\u003d\u0027\u0027, action\u003d\u0027\u0027, reason\u003d\u0027\u0027)"},{"line_number":2338,"context_line":"            raise exception.AggregateError(**msgvars)"},{"line_number":2339,"context_line":"        self.stubs.Set(self.compute.driver, \"add_to_aggregate\","},{"line_number":2340,"context_line":"                       fake_driver_add_to_aggregate)"},{"line_number":2341,"context_line":"        metadata \u003d {pool_states.POOL_FLAG: \"XenAPI\","}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAMH%2F%2Ftzk%3D","line":2338,"in_reply_to":"AAAAMH%2F%2Ft0U%3D","updated":"2012-11-28 23:02:10.000000000","message":"True ... but variety is the spice of life.   or something.","commit_id":"b0997eadd237b2244568a27c0f34d66f661f4f04"}]}
