)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"3e067b1919ce14250af6abf66134a2ce22a93054","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"libvirt: make detach_device to return async object"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add a pattern to handle asynchone operation from method"},{"line_number":10,"context_line":"detach_device in Guest."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Ia2eeff8b30901a2dcbd730b5ac672f123db161aa"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"da20952f_0b2ed242","line":9,"updated":"2015-08-31 11:04:25.000000000","message":"asynchone \u003d\u003e asynchronous","commit_id":"f58012e01048cc2998325cd19a2a7ed8aad90e12"}],"nova/exception.py":[{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"3e067b1919ce14250af6abf66134a2ce22a93054","unresolved":false,"context_lines":[{"line_number":1910,"context_line":""},{"line_number":1911,"context_line":""},{"line_number":1912,"context_line":"class AsyncOperationTimeout(NovaException):"},{"line_number":1913,"context_line":"    msg_fmt \u003d _(\"Asynchrone operation take too long\")"}],"source_content_type":"text/x-python","patch_set":2,"id":"da20952f_cbda1a4b","line":1913,"updated":"2015-08-31 11:04:25.000000000","message":"Typo\n\nAsynchronous operation takes too long\nor\nAsynchronous operation exceeded timeout","commit_id":"f58012e01048cc2998325cd19a2a7ed8aad90e12"}],"nova/virt/libvirt/driver.py":[{"author":{"_account_id":2759,"name":"Huang Zhiteng","email":"winston.d@gmail.com","username":"zhiteng-huang"},"change_message_id":"65ad67d00e36d84bdecb656ab750e5faf69ea820","unresolved":false,"context_lines":[{"line_number":1274,"context_line":"                detach_success \u003d False"},{"line_number":1275,"context_line":"                force_disconnect \u003d True"},{"line_number":1276,"context_line":""},{"line_number":1277,"context_line":"            if detach_success:"},{"line_number":1278,"context_line":"                LOG.info(_LI(\u0027Device %(device)s detached successfully.\u0027),"},{"line_number":1279,"context_line":"                         {\u0027device\u0027: disk_dev}, instance\u003dinstance)"},{"line_number":1280,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_5a48682d","line":1277,"updated":"2015-08-28 10:29:20.000000000","message":"detach_success is not needed.  Use force_disconnect can do the same.","commit_id":"82582ebf9f0283a9120cf1a55d236dddccb5062f"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"10000af09c4f74a62e4cf63f0b1a8164050adf89","unresolved":false,"context_lines":[{"line_number":1274,"context_line":"                detach_success \u003d False"},{"line_number":1275,"context_line":"                force_disconnect \u003d True"},{"line_number":1276,"context_line":""},{"line_number":1277,"context_line":"            if detach_success:"},{"line_number":1278,"context_line":"                LOG.info(_LI(\u0027Device %(device)s detached successfully.\u0027),"},{"line_number":1279,"context_line":"                         {\u0027device\u0027: disk_dev}, instance\u003dinstance)"},{"line_number":1280,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_721bc7ca","line":1277,"in_reply_to":"da20952f_5a48682d","updated":"2015-08-31 09:53:07.000000000","message":"Yes, we can save a variable.","commit_id":"82582ebf9f0283a9120cf1a55d236dddccb5062f"}]}
