)]}'
{"nova/virt/libvirt/volume.py":[{"author":{"_account_id":5638,"name":"Davanum Srinivas","email":"davanum@gmail.com","username":"dims-v"},"change_message_id":"b84abccd9ce36d47654f2c0db59440204e4a479d","unresolved":false,"context_lines":[{"line_number":300,"context_line":"    \"\"\"Driver to attach Network volumes to libvirt.\"\"\""},{"line_number":301,"context_line":"    supported_transports \u003d [\u0027be2iscsi\u0027, \u0027bnx2i\u0027, \u0027cxgb3i\u0027,"},{"line_number":302,"context_line":"                            \u0027cxgb4i\u0027, \u0027qla4xxx\u0027, \u0027ocs\u0027]"},{"line_number":303,"context_line":"    MULTIPATH_ERROR_REGEX \u003d re.compile(\"\\w{3} \\d+ \\d\\d:\\d\\d:\\d\\d \\|.*$\")"},{"line_number":304,"context_line":""},{"line_number":305,"context_line":"    def __init__(self, connection):"},{"line_number":306,"context_line":"        super(LibvirtISCSIVolumeDriver, self).__init__(connection,"}],"source_content_type":"text/x-python","patch_set":1,"id":"7aaa499b_819366fa","line":303,"updated":"2015-04-12 17:00:35.000000000","message":"funny, we have the same regex in another review:\nhttps://review.openstack.org/#/c/172660/2/nova/storage/linuxscsi.py,cm\n\nworth splitting into a separate utility method?","commit_id":"317de674d62537fc5a1653203a2d5df776095610"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"5ab401c32cb2e11e557d4c4078e179012e2a4b75","unresolved":false,"context_lines":[{"line_number":300,"context_line":"    \"\"\"Driver to attach Network volumes to libvirt.\"\"\""},{"line_number":301,"context_line":"    supported_transports \u003d [\u0027be2iscsi\u0027, \u0027bnx2i\u0027, \u0027cxgb3i\u0027,"},{"line_number":302,"context_line":"                            \u0027cxgb4i\u0027, \u0027qla4xxx\u0027, \u0027ocs\u0027]"},{"line_number":303,"context_line":"    MULTIPATH_ERROR_REGEX \u003d re.compile(\"\\w{3} \\d+ \\d\\d:\\d\\d:\\d\\d \\|.*$\")"},{"line_number":304,"context_line":""},{"line_number":305,"context_line":"    def __init__(self, connection):"},{"line_number":306,"context_line":"        super(LibvirtISCSIVolumeDriver, self).__init__(connection,"}],"source_content_type":"text/x-python","patch_set":1,"id":"7aaa499b_4b40d156","line":303,"in_reply_to":"7aaa499b_819366fa","updated":"2015-04-13 09:59:58.000000000","message":"+1","commit_id":"317de674d62537fc5a1653203a2d5df776095610"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"5ab401c32cb2e11e557d4c4078e179012e2a4b75","unresolved":false,"context_lines":[{"line_number":750,"context_line":"                                  device],"},{"line_number":751,"context_line":"                                  check_exit_code\u003d[0, 1])[0]"},{"line_number":752,"context_line":"        mpath_line \u003d [line for line in out.splitlines()"},{"line_number":753,"context_line":"                      if not re.match(self.MULTIPATH_ERROR_REGEX, line)]"},{"line_number":754,"context_line":"        if len(mpath_line) \u003e 0 and len(mpath_line[0]) \u003e 0:"},{"line_number":755,"context_line":"            return \"/dev/mapper/%s\" % mpath_line[0].split(\" \")[0]"},{"line_number":756,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7aaa499b_b6745c9c","line":753,"range":{"start_line":753,"start_character":42,"end_line":753,"end_character":43},"updated":"2015-04-13 09:59:58.000000000","message":"I\u0027d recommend calling linuxscsi.find_multipath_device(device) instead of duplicating code here.","commit_id":"317de674d62537fc5a1653203a2d5df776095610"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"69678dd48cce598312c2e2ebf35eb968101c33ff","unresolved":false,"context_lines":[{"line_number":748,"context_line":"        if mdev_info:"},{"line_number":749,"context_line":"            return mdev_info[\u0027device\u0027]"},{"line_number":750,"context_line":""},{"line_number":751,"context_line":"        return None"},{"line_number":752,"context_line":""},{"line_number":753,"context_line":"    def _get_iscsi_devices(self):"},{"line_number":754,"context_line":"        try:"}],"source_content_type":"text/x-python","patch_set":2,"id":"7a016987_d22deea8","line":751,"updated":"2015-06-01 09:03:21.000000000","message":"you should perhaps think I\u0027m nitpicking but there is no need to return None here :-)","commit_id":"2ae828b178198ef2af6cfae4b7da722c32fac366"}]}
