)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":8912,"name":"Ryan McNair","email":"rdmcnair@us.ibm.com","username":"rdmcnair"},"change_message_id":"3fb10fd1f969d5b7cc42d05c29976be0b30c96ff","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2016-02-10 14:13:01 -0600"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Lun id\u0027s \u003e 255 should be converted to hex"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch addresses the issue that where lun id\u0027s are larger"},{"line_number":10,"context_line":"that 255 they are being kept an integer so the volume and"},{"line_number":11,"context_line":"search paths are being malformed and volumes can\u0027t be found."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3a57f1b5_43f640fa","line":8,"updated":"2016-02-11 17:46:45.000000000","message":"If possible, for my own growth, I\u0027d love to hear why 255 is the max integer value that can be stored without issues?  Also is there a reason not to convert them all to hex to be consistent?","commit_id":"e0b7c429fdf40e5287787b6d980660e2432e3294"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"b2ed2fea87e69c1002764e8e28e5011968f0182d","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2016-02-10 14:13:01 -0600"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Lun id\u0027s \u003e 255 should be converted to hex"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch addresses the issue that where lun id\u0027s are larger"},{"line_number":10,"context_line":"that 255 they are being kept an integer so the volume and"},{"line_number":11,"context_line":"search paths are being malformed and volumes can\u0027t be found."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3a57f1b5_c39a306e","line":8,"in_reply_to":"3a57f1b5_43f640fa","updated":"2016-02-11 17:53:02.000000000","message":"that\u0027s not how the linux scsi subsystem works.   udev uses ints for anything \u003c 255, and hex for anything larger.  \n\nIf you always use hex, you won\u0027t find/discover any volumes unless their lun ID is \u003e 255.  It simply won\u0027t work.","commit_id":"e0b7c429fdf40e5287787b6d980660e2432e3294"},{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"ad93ea7f289396d7bed1b03fc7794ae71fdf4372","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Lun id\u0027s \u003e 255 should be converted to hex"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This patch addresses the issue that where lun id\u0027s are larger"},{"line_number":10,"context_line":"that 255 they are being kept an integer so the volume and"},{"line_number":11,"context_line":"search paths are being malformed and volumes can\u0027t be found."},{"line_number":12,"context_line":"This patch adds a method to utils.py to process the lun id\u0027s- it"},{"line_number":13,"context_line":"works with both a single lun id or a list of them. This patch also"},{"line_number":14,"context_line":"modifies the necessary unit tests and adds ones to cover the paths"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3a57f1b5_27d589b8","line":11,"range":{"start_line":9,"start_character":0,"end_line":11,"end_character":60},"updated":"2016-02-10 21:42:45.000000000","message":"Ok, sorry, but this first sentence is really hard to parse.  Can we change this to:\n\nThis patch addresses the issue where lun id\u0027s are a value larger than 255 they are being kept as an integer.  This causes the volume and search paths to be malformed and subsequently volumes can\u0027t be found.","commit_id":"e0b7c429fdf40e5287787b6d980660e2432e3294"},{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"ad93ea7f289396d7bed1b03fc7794ae71fdf4372","unresolved":false,"context_lines":[{"line_number":9,"context_line":"This patch addresses the issue that where lun id\u0027s are larger"},{"line_number":10,"context_line":"that 255 they are being kept an integer so the volume and"},{"line_number":11,"context_line":"search paths are being malformed and volumes can\u0027t be found."},{"line_number":12,"context_line":"This patch adds a method to utils.py to process the lun id\u0027s- it"},{"line_number":13,"context_line":"works with both a single lun id or a list of them. This patch also"},{"line_number":14,"context_line":"modifies the necessary unit tests and adds ones to cover the paths"},{"line_number":15,"context_line":"in the new method."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3a57f1b5_07e96d80","line":12,"range":{"start_line":12,"start_character":56,"end_line":12,"end_character":60},"updated":"2016-02-10 21:42:45.000000000","message":"Would mention again here that it converts them to hex if they are a value larger than 255.","commit_id":"e0b7c429fdf40e5287787b6d980660e2432e3294"}],"os_brick/initiator/connector.py":[{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"a451d186f8a24c95872f5a7b9fdbe12816887c1c","unresolved":false,"context_lines":[{"line_number":744,"context_line":"        return [(connection_properties[\u0027target_portal\u0027],"},{"line_number":745,"context_line":"                 connection_properties[\u0027target_iqn\u0027],"},{"line_number":746,"context_line":"                 self._linuxscsi.process_lun_id(connection_properties.get("},{"line_number":747,"context_line":"                     \u0027target_lun\u0027, 0)))]"},{"line_number":748,"context_line":""},{"line_number":749,"context_line":"    def _discover_iscsi_portals(self, connection_properties):"},{"line_number":750,"context_line":"        if all([key in connection_properties for key in (\u0027target_portals\u0027,"}],"source_content_type":"text/x-python","patch_set":9,"id":"3a57f1b5_a577bc9e","line":747,"updated":"2016-02-12 18:27:35.000000000","message":"looking at this patch a little closer, I think we are missing a few places.\n\n_get_device_path() seems like a better candidate to modify the lun_id, because it\u0027s used everywhere we are trying to build a path to search for on the filesystem.  That\u0027s covered in calls from connect_volume and disconnect_volume.","commit_id":"794da2d7a3576ac656eae31196413d66f2756ed4"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"e3d27bc8655db33afd437a3e08b52688d7854e1c","unresolved":false,"context_lines":[{"line_number":1455,"context_line":"            host_device \u003d \"/dev/disk/by-path/pci-%s-fc-%s-lun-%s\" % ("},{"line_number":1456,"context_line":"                pci_num,"},{"line_number":1457,"context_line":"                target_wwn,"},{"line_number":1458,"context_line":"                lun)"},{"line_number":1459,"context_line":"            host_devices.append(host_device)"},{"line_number":1460,"context_line":"        return host_devices"},{"line_number":1461,"context_line":""}],"source_content_type":"text/x-python","patch_set":9,"id":"3a57f1b5_7f5cf37c","line":1458,"updated":"2016-02-12 18:01:58.000000000","message":"I think we need to make sure the lun id here is safe as well.","commit_id":"794da2d7a3576ac656eae31196413d66f2756ed4"}],"os_brick/initiator/linuxscsi.py":[{"author":{"_account_id":17405,"name":"Jacob Gregor","email":"jgregor@us.ibm.com","username":"jgregor"},"change_message_id":"1e9144e788b57a5d033ed1df81dd158b23c6333d","unresolved":false,"context_lines":[{"line_number":410,"context_line":"            return new_size"},{"line_number":411,"context_line":""},{"line_number":412,"context_line":""},{"line_number":413,"context_line":"def process_lun_id(lun_id):"},{"line_number":414,"context_line":"    if isinstance(lun_id, list):"},{"line_number":415,"context_line":"        processed \u003d []"},{"line_number":416,"context_line":"        for x in lun_id:"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a57f1b5_5a2dc5fc","line":413,"range":{"start_line":413,"start_character":0,"end_line":413,"end_character":27},"updated":"2016-02-11 17:07:13.000000000","message":"Should this be located inside of the class above?","commit_id":"e0b7c429fdf40e5287787b6d980660e2432e3294"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"b2ed2fea87e69c1002764e8e28e5011968f0182d","unresolved":false,"context_lines":[{"line_number":410,"context_line":"            return new_size"},{"line_number":411,"context_line":""},{"line_number":412,"context_line":""},{"line_number":413,"context_line":"def process_lun_id(lun_id):"},{"line_number":414,"context_line":"    if isinstance(lun_id, list):"},{"line_number":415,"context_line":"        processed \u003d []"},{"line_number":416,"context_line":"        for x in lun_id:"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a57f1b5_2397843b","line":413,"range":{"start_line":413,"start_character":0,"end_line":413,"end_character":27},"in_reply_to":"3a57f1b5_5a2dc5fc","updated":"2016-02-11 17:53:02.000000000","message":"yah this should be part of the class.","commit_id":"e0b7c429fdf40e5287787b6d980660e2432e3294"},{"author":{"_account_id":8912,"name":"Ryan McNair","email":"rdmcnair@us.ibm.com","username":"rdmcnair"},"change_message_id":"3fb10fd1f969d5b7cc42d05c29976be0b30c96ff","unresolved":false,"context_lines":[{"line_number":411,"context_line":""},{"line_number":412,"context_line":""},{"line_number":413,"context_line":"def process_lun_id(lun_id):"},{"line_number":414,"context_line":"    if isinstance(lun_id, list):"},{"line_number":415,"context_line":"        processed \u003d []"},{"line_number":416,"context_line":"        for x in lun_id:"},{"line_number":417,"context_line":"            if x \u003e 255:"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a57f1b5_289d230a","line":414,"updated":"2016-02-11 17:46:45.000000000","message":"Could re-arrange this method to re-use the common code into something like this...\n\ndef process_lun_id(lun_ids):\n    if not isinstance(lun_ids, list):\n        lun_ids \u003d [lun_ids]\n    for lun_id in lun_ids:\n        val \u003d lun_id\n        if val \u003e 255:\n            val \u003d hex(lun_id)\n        processed.append(val)\n\n     return processed\n\nOr if it\u0027s important for some reason to return list when list passed, and single val when single val could add some split on return.\n\nIf you prefer to have them split for some reason, think we can at least combine some of the common code more.","commit_id":"e0b7c429fdf40e5287787b6d980660e2432e3294"},{"author":{"_account_id":8912,"name":"Ryan McNair","email":"rdmcnair@us.ibm.com","username":"rdmcnair"},"change_message_id":"3fb10fd1f969d5b7cc42d05c29976be0b30c96ff","unresolved":false,"context_lines":[{"line_number":420,"context_line":"            else:"},{"line_number":421,"context_line":"                processed.append(x)"},{"line_number":422,"context_line":"        return processed"},{"line_number":423,"context_line":"    else:"},{"line_number":424,"context_line":"        if lun_id \u003c 255:"},{"line_number":425,"context_line":"            return lun_id"},{"line_number":426,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a57f1b5_a804b317","line":423,"updated":"2016-02-11 17:46:45.000000000","message":"Since this part of the behavior is the same as above (convert to hex if \u003e 255), it seems odd to flip the way we\u0027re doing the if check compared to above.\n\nAlso I\u0027m pretty sure this actually has different behavior....\n\npassing in 255 would return hex(255), while passing in [255] would return [255] - list would get hexed","commit_id":"e0b7c429fdf40e5287787b6d980660e2432e3294"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"574bd4f5308bfd31eaca33bc5ab9ef01a45f0828","unresolved":false,"context_lines":[{"line_number":414,"context_line":"        if isinstance(lun_id, list):"},{"line_number":415,"context_line":"            processed \u003d []"},{"line_number":416,"context_line":"            for x in lun_id:"},{"line_number":417,"context_line":"                if x \u003e 255:"},{"line_number":418,"context_line":"                    val \u003d hex(x)"},{"line_number":419,"context_line":"                    length \u003d 18-len(val)"},{"line_number":420,"context_line":"                    for i in range(length):"}],"source_content_type":"text/x-python","patch_set":6,"id":"3a57f1b5_9e7b2a8c","line":417,"updated":"2016-02-11 19:16:44.000000000","message":"udev starts at 256, not 255.","commit_id":"e2435a113009435b26cbddfaf6f53120fc7bbc00"},{"author":{"_account_id":8912,"name":"Ryan McNair","email":"rdmcnair@us.ibm.com","username":"rdmcnair"},"change_message_id":"03116ac8c7b1976c54a67b2fb9123c99f90eadef","unresolved":false,"context_lines":[{"line_number":416,"context_line":"            for x in lun_id:"},{"line_number":417,"context_line":"                if x \u003e 255:"},{"line_number":418,"context_line":"                    val \u003d hex(x)"},{"line_number":419,"context_line":"                    length \u003d 18 - len(val)"},{"line_number":420,"context_line":"                    for i in range(length):"},{"line_number":421,"context_line":"                        val +\u003d \u00270\u0027"},{"line_number":422,"context_line":"                    processed.append(val)"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a57f1b5_2a68b0b8","line":419,"updated":"2016-02-11 21:05:59.000000000","message":"Don\u0027t think this will work still.  Looking at what\u0027s here - http://bazaar.launchpad.net/~vcs-imports/udev/trunk/view/head:/src/udev-builtin-path_id.c#L75 - the first hex value should be formatted to four digits.  So in the case of 256, it should start with 0100, where currently it would start with \"100\" and have extra zero on the end","commit_id":"bbf74809f83559ecb203aa6ac6773267cca72e3f"},{"author":{"_account_id":8912,"name":"Ryan McNair","email":"rdmcnair@us.ibm.com","username":"rdmcnair"},"change_message_id":"03116ac8c7b1976c54a67b2fb9123c99f90eadef","unresolved":false,"context_lines":[{"line_number":417,"context_line":"                if x \u003e 255:"},{"line_number":418,"context_line":"                    val \u003d hex(x)"},{"line_number":419,"context_line":"                    length \u003d 18 - len(val)"},{"line_number":420,"context_line":"                    for i in range(length):"},{"line_number":421,"context_line":"                        val +\u003d \u00270\u0027"},{"line_number":422,"context_line":"                    processed.append(val)"},{"line_number":423,"context_line":"                else:"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a57f1b5_8a9d24be","line":420,"updated":"2016-02-11 21:05:59.000000000","message":"For future we could probably do this with string formatting / some type of fill method.","commit_id":"bbf74809f83559ecb203aa6ac6773267cca72e3f"},{"author":{"_account_id":8912,"name":"Ryan McNair","email":"rdmcnair@us.ibm.com","username":"rdmcnair"},"change_message_id":"03116ac8c7b1976c54a67b2fb9123c99f90eadef","unresolved":false,"context_lines":[{"line_number":423,"context_line":"                else:"},{"line_number":424,"context_line":"                    processed.append(x)"},{"line_number":425,"context_line":"            return processed"},{"line_number":426,"context_line":"        else:"},{"line_number":427,"context_line":"            if lun_id \u003c\u003d 255:"},{"line_number":428,"context_line":"                return lun_id"},{"line_number":429,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a57f1b5_cae55c38","line":426,"updated":"2016-02-11 21:05:59.000000000","message":"It\u0027s very confusing to have the same behavior, but above we do \u003e 255, and here we do \u003c\u003d 255.\n\nSince the code inside these are identical, I\u0027d really suggest moving the code for....\n            if lun_id \u003c\u003d 255:\n                return lun_id\n            else:\n                processed \u003d hex(lun_id)\n                length \u003d 18 - len(processed)\n                for i in range(length):\n                    processed +\u003d \u00270\u0027\n                return processed\n\ninto it\u0027s own submethod, and then calling that in the case that we\u0027re doing this against a list as well as the single value case.","commit_id":"bbf74809f83559ecb203aa6ac6773267cca72e3f"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"a78a005a6cb38086defa1bd72b444c249d4bf05d","unresolved":false,"context_lines":[{"line_number":423,"context_line":"                else:"},{"line_number":424,"context_line":"                    processed.append(x)"},{"line_number":425,"context_line":"            return processed"},{"line_number":426,"context_line":"        else:"},{"line_number":427,"context_line":"            if lun_id \u003c\u003d 255:"},{"line_number":428,"context_line":"                return lun_id"},{"line_number":429,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a57f1b5_e04957b8","line":426,"in_reply_to":"3a57f1b5_cae55c38","updated":"2016-02-11 22:19:52.000000000","message":"All of this is terribly complicated when something simple should suffice.\n\nif lun_id \u003c 256:\n        return lun_id\n    else:\n        return \"0x%04x%04x00000000\" % (lun_id \u0026 0xffff, lun_id \u003e\u003e16 \u0026 0xffff)","commit_id":"bbf74809f83559ecb203aa6ac6773267cca72e3f"},{"author":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"change_message_id":"206a8649bfeb8b259b93c362efa2634e5aad5e76","unresolved":false,"context_lines":[{"line_number":423,"context_line":"                else:"},{"line_number":424,"context_line":"                    processed.append(x)"},{"line_number":425,"context_line":"            return processed"},{"line_number":426,"context_line":"        else:"},{"line_number":427,"context_line":"            if lun_id \u003c\u003d 255:"},{"line_number":428,"context_line":"                return lun_id"},{"line_number":429,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a57f1b5_66c820a9","line":426,"in_reply_to":"3a57f1b5_e04957b8","updated":"2016-02-11 22:31:47.000000000","message":"+1, for the more simple operation and a helper method","commit_id":"bbf74809f83559ecb203aa6ac6773267cca72e3f"},{"author":{"_account_id":8912,"name":"Ryan McNair","email":"rdmcnair@us.ibm.com","username":"rdmcnair"},"change_message_id":"2f84e9b2fd4b90b7b6a0f9fad71768a58776bc1e","unresolved":false,"context_lines":[{"line_number":423,"context_line":"                else:"},{"line_number":424,"context_line":"                    processed.append(x)"},{"line_number":425,"context_line":"            return processed"},{"line_number":426,"context_line":"        else:"},{"line_number":427,"context_line":"            if lun_id \u003c\u003d 255:"},{"line_number":428,"context_line":"                return lun_id"},{"line_number":429,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":7,"id":"3a57f1b5_a67618a2","line":426,"in_reply_to":"3a57f1b5_e04957b8","updated":"2016-02-11 22:27:59.000000000","message":"+1.  And just call that when you want to convert something, whether you\u0027re going through list or single val.","commit_id":"bbf74809f83559ecb203aa6ac6773267cca72e3f"},{"author":{"_account_id":8912,"name":"Ryan McNair","email":"rdmcnair@us.ibm.com","username":"rdmcnair"},"change_message_id":"d7224de58fd150e53420fe112140bd41afb4f7da","unresolved":false,"context_lines":[{"line_number":415,"context_line":"            processed \u003d []"},{"line_number":416,"context_line":"            for x in lun_ids:"},{"line_number":417,"context_line":"                x \u003d self._check_lun_id(x)"},{"line_number":418,"context_line":"                processed.append(x)"},{"line_number":419,"context_line":"            return processed"},{"line_number":420,"context_line":"        else:"},{"line_number":421,"context_line":"            processed \u003d self._check_lun_id(lun_ids)"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a57f1b5_3b89b275","line":418,"updated":"2016-02-12 16:59:47.000000000","message":"Another nit, but if you\u0027re making updates you can move the \"return processed\" outside of the if/else block","commit_id":"d9cada428d17359d1d7996445df18e6ce7bea531"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"59b3e052740c7b8fd0606abcff3b9447b41b61db","unresolved":false,"context_lines":[{"line_number":415,"context_line":"            processed \u003d []"},{"line_number":416,"context_line":"            for x in lun_ids:"},{"line_number":417,"context_line":"                x \u003d self._check_lun_id(x)"},{"line_number":418,"context_line":"                processed.append(x)"},{"line_number":419,"context_line":"            return processed"},{"line_number":420,"context_line":"        else:"},{"line_number":421,"context_line":"            processed \u003d self._check_lun_id(lun_ids)"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a57f1b5_df4ac754","line":418,"in_reply_to":"3a57f1b5_3b89b275","updated":"2016-02-12 17:48:27.000000000","message":"let\u0027s not waste time on this kind of stuff, it\u0027s counterproductive.  You are just droning on about stylistic changes that you prefer, but doesn\u0027t affect the functioning of this code.  please stop.","commit_id":"d9cada428d17359d1d7996445df18e6ce7bea531"},{"author":{"_account_id":12924,"name":"Patrick East","email":"east.patrick@gmail.com","username":"patrick.east"},"change_message_id":"9e51031d188cd4dbaa966c60b44fc3e0a77c8eb7","unresolved":false,"context_lines":[{"line_number":421,"context_line":"            processed \u003d self._check_lun_id(lun_ids)"},{"line_number":422,"context_line":"            return processed"},{"line_number":423,"context_line":""},{"line_number":424,"context_line":"    def _check_lun_id(self, lun_id):"},{"line_number":425,"context_line":"        if lun_id \u003c 256:"},{"line_number":426,"context_line":"                return lun_id"},{"line_number":427,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a57f1b5_daef63e7","line":424,"updated":"2016-02-12 06:05:59.000000000","message":"silly nit: might be better to call it something more like _format_lun_id since it isn\u0027t doing like validation or anything.","commit_id":"d9cada428d17359d1d7996445df18e6ce7bea531"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"59b3e052740c7b8fd0606abcff3b9447b41b61db","unresolved":false,"context_lines":[{"line_number":421,"context_line":"            processed \u003d self._check_lun_id(lun_ids)"},{"line_number":422,"context_line":"            return processed"},{"line_number":423,"context_line":""},{"line_number":424,"context_line":"    def _check_lun_id(self, lun_id):"},{"line_number":425,"context_line":"        if lun_id \u003c 256:"},{"line_number":426,"context_line":"                return lun_id"},{"line_number":427,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a57f1b5_5f6d77ca","line":424,"in_reply_to":"3a57f1b5_daef63e7","updated":"2016-02-12 17:48:27.000000000","message":"good call here patrick.  I think you are right about this one.","commit_id":"d9cada428d17359d1d7996445df18e6ce7bea531"}],"os_brick/tests/initiator/test_linuxscsi.py":[{"author":{"_account_id":8912,"name":"Ryan McNair","email":"rdmcnair@us.ibm.com","username":"rdmcnair"},"change_message_id":"3fb10fd1f969d5b7cc42d05c29976be0b30c96ff","unresolved":false,"context_lines":[{"line_number":648,"context_line":"        lun_id \u003d 13"},{"line_number":649,"context_line":"        result \u003d linuxscsi.process_lun_id(lun_id)"},{"line_number":650,"context_line":"        expected \u003d 13"},{"line_number":651,"context_line":"        self.assertEqual(expected, result)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a57f1b5_036848b8","line":651,"updated":"2016-02-11 17:46:45.000000000","message":"Would add a test case for passing in \"256\" as single val","commit_id":"e0b7c429fdf40e5287787b6d980660e2432e3294"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"7206c24f7dcebefeacfa5ec1de217de4a1925f25","unresolved":false,"context_lines":[{"line_number":648,"context_line":"        lun_id \u003d 13"},{"line_number":649,"context_line":"        result \u003d linuxscsi.process_lun_id(lun_id)"},{"line_number":650,"context_line":"        expected \u003d 13"},{"line_number":651,"context_line":"        self.assertEqual(expected, result)"}],"source_content_type":"text/x-python","patch_set":4,"id":"3a57f1b5_239d440a","line":651,"in_reply_to":"3a57f1b5_036848b8","updated":"2016-02-11 18:00:16.000000000","message":"yah I think this is good.  We need to make sure when the last int is used and when the first hex # is expected.  So this doesn\u0027t break in the future.","commit_id":"e0b7c429fdf40e5287787b6d980660e2432e3294"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"e7597bef2e27a0c9f24ddbcdaa04f627cd35217e","unresolved":false,"context_lines":[{"line_number":638,"context_line":"    def test_process_lun_id_single_val_make_hex(self):"},{"line_number":639,"context_line":"        lun_id \u003d 499"},{"line_number":640,"context_line":"        result \u003d self.linuxscsi.process_lun_id(lun_id)"},{"line_number":641,"context_line":"        expected \u003d \u00270x1f3\u0027"},{"line_number":642,"context_line":"        self.assertEqual(expected, result)"},{"line_number":643,"context_line":""},{"line_number":644,"context_line":"    def test_process_lun_id_single_var_return(self):"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a57f1b5_ce8b3767","line":641,"updated":"2016-02-11 18:07:52.000000000","message":"looking at the unit test expected results, I think the formatting of the Hex # isn\u0027t correct.  \nIf you look at the bug, you will see the format of the hex # is quite large.\n\nFor example,\nip-10.52.1.11:3260-iscsi-iqn.2000-05.com.3pardata:20810002ac00383d-lun-0x0100000000000000 \n\nip-192.168.5.100:3260-iscsi-iqn.1989-10.jp.co.xxx:storage.ttsp.2ec7fdda.ff5c4a16.0-lun-0x016b000000000000","commit_id":"6a6fa0f646f99fc7fd59f7dff69f9ed840820f65"},{"author":{"_account_id":8912,"name":"Ryan McNair","email":"rdmcnair@us.ibm.com","username":"rdmcnair"},"change_message_id":"5a85158b254167d1667c86a48f29c25d8dcfc694","unresolved":false,"context_lines":[{"line_number":643,"context_line":""},{"line_number":644,"context_line":"    def test_process_lun_id_single_val_make_hex_border_case(self):"},{"line_number":645,"context_line":"        lun_id \u003d 256"},{"line_number":646,"context_line":"        result \u003d self.linuxscsi.process_lun_id(lun_id)"},{"line_number":647,"context_line":"        expected \u003d \u00270x1000000000000000\u0027"},{"line_number":648,"context_line":"        self.assertEqual(expected, result)"},{"line_number":649,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"3a57f1b5_2af990c7","line":646,"updated":"2016-02-11 21:08:32.000000000","message":"Looking at the C code as well as Walt\u0027s test patch (http://paste.openstack.org/show/486752/), I think we want this to be \u00270x0100000000000000\u0027","commit_id":"bbf74809f83559ecb203aa6ac6773267cca72e3f"},{"author":{"_account_id":8912,"name":"Ryan McNair","email":"rdmcnair@us.ibm.com","username":"rdmcnair"},"change_message_id":"4da651b37a5ce8710fd693cc56c524423c307810","unresolved":false,"context_lines":[{"line_number":628,"context_line":"                         \u0027multipathd reconfigure\u0027]"},{"line_number":629,"context_line":"        self.assertEqual(expected_cmds, self.cmds)"},{"line_number":630,"context_line":""},{"line_number":631,"context_line":"    def test_process_lun_id_list(self):"},{"line_number":632,"context_line":"        lun_list \u003d [2, 255, 88, 370, 5]"},{"line_number":633,"context_line":"        result \u003d self.linuxscsi.process_lun_id(lun_list)"},{"line_number":634,"context_line":"        expected \u003d [2, 255, 88, \u00270x0172000000000000\u0027, 5]"}],"source_content_type":"text/x-python","patch_set":8,"id":"3a57f1b5_fbad5a9b","line":631,"updated":"2016-02-12 17:05:25.000000000","message":"Probably worth adding 256 to this test case to flex this edge case in list","commit_id":"d9cada428d17359d1d7996445df18e6ce7bea531"}],"os_brick/tests/test_utils.py":[{"author":{"_account_id":17405,"name":"Jacob Gregor","email":"jgregor@us.ibm.com","username":"jgregor"},"change_message_id":"844116ff9300988cc32de2dc81934150492396a1","unresolved":false,"context_lines":[{"line_number":112,"context_line":"            self.assertFalse(mock_sleep.called)"},{"line_number":113,"context_line":""},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"def test_process_lun_id_list(self):"},{"line_number":116,"context_line":"    lun_list \u003d [2, 255, 88, 370, 5]"},{"line_number":117,"context_line":"    result \u003d utils.process_lun_id(lun_list)"},{"line_number":118,"context_line":"    expected \u003d [2, 0xff, 88, 0x172, 5]"},{"line_number":119,"context_line":""},{"line_number":120,"context_line":"    self.assertEqual(expected, result)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":""},{"line_number":123,"context_line":"def test_process_lun_id_single_val_make_hex(self):"},{"line_number":124,"context_line":"    lun_id \u003d 499"},{"line_number":125,"context_line":"    result \u003d utils.process_lun_id(lun_id)"},{"line_number":126,"context_line":"    expected \u003d 0x1F3"},{"line_number":127,"context_line":"    self.assertEqual(expected, result)"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"def test_process_lun_id_single_var_return(self):"},{"line_number":131,"context_line":"    lun_id \u003d 13"},{"line_number":132,"context_line":"    result \u003d utils.process_lun_id(lun_id)"},{"line_number":133,"context_line":"    expected \u003d 13"},{"line_number":134,"context_line":"    self.assertEqual(expected, result)"}],"source_content_type":"text/x-python","patch_set":2,"id":"3a57f1b5_7e927159","line":134,"range":{"start_line":115,"start_character":0,"end_line":134,"end_character":38},"updated":"2016-02-09 19:10:50.000000000","message":"Does this need to be in its own class?","commit_id":"5c3ac66f8c3466abd4524714b892a09b09afa955"}],"os_brick/utils.py":[{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"bad8b41862f3e39ae5205c395c00467c125ee452","unresolved":false,"context_lines":[{"line_number":59,"context_line":"    return _decorator"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"def process_lun_id(lun_id):"},{"line_number":63,"context_line":"    if isinstance(lun_id, types.ListType):"},{"line_number":64,"context_line":"        processed \u003d []"},{"line_number":65,"context_line":"        for x in lun_id:"}],"source_content_type":"text/x-python","patch_set":3,"id":"3a57f1b5_46c0cee0","line":62,"updated":"2016-02-10 19:48:10.000000000","message":"should we put this in the initiator/linuxscsi.py since this seems specific to a linux system?   I\u0027m not sure this is needed for Windows based connectors.","commit_id":"028f6f3adf69d0d7e50e4b44fe5727d8802138d6"}]}
