)]}'
{"nova/virt/libvirt/driver.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"59ccbb0dbbdbaf572439a6d581d18e333de07e16","unresolved":false,"context_lines":[{"line_number":1736,"context_line":"                    else:"},{"line_number":1737,"context_line":"                        root_disk.snapshot_extract(out_path, image_format)"},{"line_number":1738,"context_line":"                except libvirt.libvirtError as ex:"},{"line_number":1739,"context_line":"                    error_code \u003d ex.get_error_code()"},{"line_number":1740,"context_line":"                    LOG.warning(\u0027Error from libvirt while taking snapshot of \u0027"},{"line_number":1741,"context_line":"                                \u0027%(instance_name)s: [Error Code \u0027"},{"line_number":1742,"context_line":"                                \u0027%(error_code)s] %(ex)s\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f4e5783_4d73b1b2","line":1739,"range":{"start_line":1739,"start_character":20,"end_line":1739,"end_character":52},"updated":"2017-10-11 15:37:35.000000000","message":"We need to use this to check if the domain was not found and that\u0027s the error and if so, raise InstanceNotFound, else just let the libvirtError raise up. There should be some examples of code in this module that check the error code for knowing if it\u0027s a domain not found error.","commit_id":"57ac2dc314aa4cbda16de2e81d927c9566d5a06f"},{"author":{"_account_id":11536,"name":"hongbin","email":"hongbin034@gmail.com","username":"hongbin"},"change_message_id":"49421901cc5754d97e8d85384ecfd755fb41dbec","unresolved":false,"context_lines":[{"line_number":1736,"context_line":"                    else:"},{"line_number":1737,"context_line":"                        root_disk.snapshot_extract(out_path, image_format)"},{"line_number":1738,"context_line":"                except libvirt.libvirtError as ex:"},{"line_number":1739,"context_line":"                    error_code \u003d ex.get_error_code()"},{"line_number":1740,"context_line":"                    LOG.warning(\u0027Error from libvirt while taking snapshot of \u0027"},{"line_number":1741,"context_line":"                                \u0027%(instance_name)s: [Error Code \u0027"},{"line_number":1742,"context_line":"                                \u0027%(error_code)s] %(ex)s\u0027,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f4e5783_f65ea910","line":1739,"range":{"start_line":1739,"start_character":20,"end_line":1739,"end_character":52},"in_reply_to":"5f4e5783_4d73b1b2","updated":"2017-10-11 19:52:39.000000000","message":"Done","commit_id":"57ac2dc314aa4cbda16de2e81d927c9566d5a06f"},{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"4e17bf4aaead316ceae83c598c29e1222773fc59","unresolved":false,"context_lines":[{"line_number":1756,"context_line":"                except libvirt.libvirtError as ex:"},{"line_number":1757,"context_line":"                    error_code \u003d ex.get_error_code()"},{"line_number":1758,"context_line":"                    if error_code \u003d\u003d libvirt.VIR_ERR_NO_DOMAIN:"},{"line_number":1759,"context_line":"                        LOG.warning(\u0027Instance %(instance_name)s disappeared \u0027"},{"line_number":1760,"context_line":"                                    \u0027while taking snapshot of it: [Error Code \u0027"},{"line_number":1761,"context_line":"                                    \u0027%(error_code)s] %(ex)s\u0027,"},{"line_number":1762,"context_line":"                                    {\u0027instance_name\u0027: instance.name,"},{"line_number":1763,"context_line":"                                     \u0027error_code\u0027: error_code,"},{"line_number":1764,"context_line":"                                     \u0027ex\u0027: ex},"},{"line_number":1765,"context_line":"                                    instance\u003dinstance)"},{"line_number":1766,"context_line":"                        raise exception.InstanceNotFound("},{"line_number":1767,"context_line":"                            instance_id\u003dinstance.uuid)"},{"line_number":1768,"context_line":"                    else:"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa0c359_d3dd9add","line":1765,"range":{"start_line":1759,"start_character":0,"end_line":1765,"end_character":54},"updated":"2018-02-21 20:01:52.000000000","message":"This error scenario seems one of common scenarios (delete instance during snapshot), so warning could be a little overkill I felt at the first look.\nbut all snapshot operations are logged as LOG.info, so this message can be fine for digging issues on productions.","commit_id":"9878ee103fc9e9241348b82b1085607313b8b90a"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"eaaf371dd746bf8ffe949b2e0eb5bb2f7834e693","unresolved":false,"context_lines":[{"line_number":1756,"context_line":"                except libvirt.libvirtError as ex:"},{"line_number":1757,"context_line":"                    error_code \u003d ex.get_error_code()"},{"line_number":1758,"context_line":"                    if error_code \u003d\u003d libvirt.VIR_ERR_NO_DOMAIN:"},{"line_number":1759,"context_line":"                        LOG.warning(\u0027Instance %(instance_name)s disappeared \u0027"},{"line_number":1760,"context_line":"                                    \u0027while taking snapshot of it: [Error Code \u0027"},{"line_number":1761,"context_line":"                                    \u0027%(error_code)s] %(ex)s\u0027,"},{"line_number":1762,"context_line":"                                    {\u0027instance_name\u0027: instance.name,"},{"line_number":1763,"context_line":"                                     \u0027error_code\u0027: error_code,"},{"line_number":1764,"context_line":"                                     \u0027ex\u0027: ex},"},{"line_number":1765,"context_line":"                                    instance\u003dinstance)"},{"line_number":1766,"context_line":"                        raise exception.InstanceNotFound("},{"line_number":1767,"context_line":"                            instance_id\u003dinstance.uuid)"},{"line_number":1768,"context_line":"                    else:"}],"source_content_type":"text/x-python","patch_set":5,"id":"ff6b8bd7_f3d60b50","line":1765,"range":{"start_line":1759,"start_character":0,"end_line":1765,"end_character":54},"in_reply_to":"3fa0c359_d3dd9add","updated":"2018-03-06 22:01:53.000000000","message":"Agree that LOG.info is more appropriate here. The admin/operator doesn\u0027t need to worry about a warning in the logs based on the user deleting the instance during a snapshot operation.","commit_id":"9878ee103fc9e9241348b82b1085607313b8b90a"},{"author":{"_account_id":27654,"name":"Hongbin Lu","email":"kira034@163.com","username":"hongbin.lu"},"change_message_id":"bdf1d01f7fcffc0dafafc0ec4175a50e036837a1","unresolved":false,"context_lines":[{"line_number":1756,"context_line":"                except libvirt.libvirtError as ex:"},{"line_number":1757,"context_line":"                    error_code \u003d ex.get_error_code()"},{"line_number":1758,"context_line":"                    if error_code \u003d\u003d libvirt.VIR_ERR_NO_DOMAIN:"},{"line_number":1759,"context_line":"                        LOG.warning(\u0027Instance %(instance_name)s disappeared \u0027"},{"line_number":1760,"context_line":"                                    \u0027while taking snapshot of it: [Error Code \u0027"},{"line_number":1761,"context_line":"                                    \u0027%(error_code)s] %(ex)s\u0027,"},{"line_number":1762,"context_line":"                                    {\u0027instance_name\u0027: instance.name,"},{"line_number":1763,"context_line":"                                     \u0027error_code\u0027: error_code,"},{"line_number":1764,"context_line":"                                     \u0027ex\u0027: ex},"},{"line_number":1765,"context_line":"                                    instance\u003dinstance)"},{"line_number":1766,"context_line":"                        raise exception.InstanceNotFound("},{"line_number":1767,"context_line":"                            instance_id\u003dinstance.uuid)"},{"line_number":1768,"context_line":"                    else:"}],"source_content_type":"text/x-python","patch_set":5,"id":"df7087c5_59a063a6","line":1765,"range":{"start_line":1759,"start_character":0,"end_line":1765,"end_character":54},"in_reply_to":"ff6b8bd7_f3d60b50","updated":"2018-03-06 23:07:37.000000000","message":"Done","commit_id":"9878ee103fc9e9241348b82b1085607313b8b90a"}]}
