)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":13954,"name":"Kosuke Tatsukawa","email":"tatsu@ab.jp.nec.com"},"change_message_id":"4535618eb47b4a25f523d0231a4bf966a52b309a","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Keiichi KII \u003ck-keiichi@bx.jp.nec.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-03-18 20:26:57 +0900"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"libvirt: add a utility to extract detached IQNs for multipath"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Extracting iSCSI targets for detached multipath device in"},{"line_number":10,"context_line":"_disconnect_volume_multipath_iscsi() is a little complicated."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"9a80dd14_a8ca726b","line":7,"updated":"2015-03-20 06:40:40.000000000","message":"\"libvirt: add a utility to extract IQNs to detach multipath device\"\nmight be better.  Same comment also applies to the line below.","commit_id":"272f27e1a11ec05ff35c40c2d70ee46e31eb5f19"}],"nova/virt/libvirt/volume.py":[{"author":{"_account_id":13954,"name":"Kosuke Tatsukawa","email":"tatsu@ab.jp.nec.com"},"change_message_id":"4535618eb47b4a25f523d0231a4bf966a52b309a","unresolved":false,"context_lines":[{"line_number":737,"context_line":""},{"line_number":738,"context_line":"        return None"},{"line_number":739,"context_line":""},{"line_number":740,"context_line":"    def _get_disconnected_targets(self, multipath_device, ips_iqns):"},{"line_number":741,"context_line":"        disconnected_ips_iqns \u003d []"},{"line_number":742,"context_line":"        entries \u003d self._get_iscsi_devices()"},{"line_number":743,"context_line":"        for ip, iqn in ips_iqns:"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a80dd14_88de8e6b","line":740,"updated":"2015-03-20 06:40:40.000000000","message":"The name _get_disconnected_targets is confusing, because this function finds the targets to disconnect, not that are already disconnected.  Something like _get_individual_targets or _get_constituent_targets might be better.","commit_id":"272f27e1a11ec05ff35c40c2d70ee46e31eb5f19"},{"author":{"_account_id":14027,"name":"Michal Rostecki","email":"mrostecki@suse.de","username":"mrostecki"},"change_message_id":"6565ff2ef692adf04b9dc89a5dc21c354503488f","unresolved":false,"context_lines":[{"line_number":744,"context_line":"            ip_iqn \u003d \"%s-iscsi-%s\" % (ip.split(\",\")[0], iqn)"},{"line_number":745,"context_line":"            for entry in entries:"},{"line_number":746,"context_line":"                entry_ip_iqn \u003d entry.split(\"-lun-\")[0]"},{"line_number":747,"context_line":"                if entry_ip_iqn[:3] \u003d\u003d \"ip-\":"},{"line_number":748,"context_line":"                    entry_ip_iqn \u003d entry_ip_iqn[3:]"},{"line_number":749,"context_line":"                elif entry_ip_iqn[:4] \u003d\u003d \"pci-\":"},{"line_number":750,"context_line":"                    # Look at an offset of len(\u0027pci-0000:00:00.0\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a80dd14_bf33ebf4","line":747,"updated":"2015-03-18 12:10:34.000000000","message":"Woludn\u0027t it be better (and more readable for other developers) to check this by regular expressions, instead of comparing slices?","commit_id":"272f27e1a11ec05ff35c40c2d70ee46e31eb5f19"},{"author":{"_account_id":13847,"name":"Keiichi KII","email":"k-keiichi@bx.jp.nec.com","username":"kii"},"change_message_id":"546c04234afd1f73bfe84bda8d2573b4912cf5cc","unresolved":false,"context_lines":[{"line_number":744,"context_line":"            ip_iqn \u003d \"%s-iscsi-%s\" % (ip.split(\",\")[0], iqn)"},{"line_number":745,"context_line":"            for entry in entries:"},{"line_number":746,"context_line":"                entry_ip_iqn \u003d entry.split(\"-lun-\")[0]"},{"line_number":747,"context_line":"                if entry_ip_iqn[:3] \u003d\u003d \"ip-\":"},{"line_number":748,"context_line":"                    entry_ip_iqn \u003d entry_ip_iqn[3:]"},{"line_number":749,"context_line":"                elif entry_ip_iqn[:4] \u003d\u003d \"pci-\":"},{"line_number":750,"context_line":"                    # Look at an offset of len(\u0027pci-0000:00:00.0\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9a80dd14_4a8926c9","line":747,"in_reply_to":"9a80dd14_bf33ebf4","updated":"2015-03-19 06:08:58.000000000","message":"I will replace comparing slices with regular exressions like this, \"^(pci-.*-)?ip-(.*)-lun-.*\".","commit_id":"272f27e1a11ec05ff35c40c2d70ee46e31eb5f19"}]}
