)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"39eca6f0cfcb3b65b3ea173bb1e35cc5714d564a","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Huawei: Modify array LUNs naming rules"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Currently we use the top eight uuid and"},{"line_number":10,"context_line":"hash value of uuid to name array LUNs."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Id4cdfc3b73a4c97fa2c14aa2afb361e643ab6369"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"7aa08908_58a2604c","line":9,"range":{"start_line":9,"start_character":21,"end_line":9,"end_character":35},"updated":"2016-06-12 05:54:49.000000000","message":"first 8 chars in the uuid string?","commit_id":"56be11a02aad461c41a7546b75543c1c8b266ec0"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"39eca6f0cfcb3b65b3ea173bb1e35cc5714d564a","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Huawei: Modify array LUNs naming rules"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Currently we use the top eight uuid and"},{"line_number":10,"context_line":"hash value of uuid to name array LUNs."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"Change-Id: Id4cdfc3b73a4c97fa2c14aa2afb361e643ab6369"},{"line_number":13,"context_line":"Closes-Bug: #1570205"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"7aa08908_f8fcec3f","line":10,"updated":"2016-06-12 05:54:49.000000000","message":"Please add some info about the fix. Also add why the current naming is a problem.","commit_id":"56be11a02aad461c41a7546b75543c1c8b266ec0"}],"cinder/tests/unit/test_huawei_drivers.py":[{"author":{"_account_id":21406,"name":"Vijay Ladani","email":"vijay.ladani@hpe.com","username":"vladani"},"change_message_id":"396815b09b34013d83d128139c2bc10610d106c8","unresolved":false,"context_lines":[{"line_number":3456,"context_line":"    def test_delete_volume_success(self):"},{"line_number":3457,"context_line":"        self.driver.delete_volume(test_volume)"},{"line_number":3458,"context_line":""},{"line_number":3459,"context_line":"    def test_create_snapshot_success(self):"},{"line_number":3460,"context_line":"        lun_info \u003d self.driver.create_snapshot(test_snap)"},{"line_number":3461,"context_line":"        self.assertEqual(11, lun_info[\u0027provider_location\u0027])"},{"line_number":3462,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7aa08908_1ceaf7ac","line":3459,"updated":"2016-06-15 12:35:54.000000000","message":"Same function with same logic has been used in another class HuaweiISCSIDriverTestCase. Function can be moved to common area if possible.","commit_id":"323f2ef307047abe483fc066c6ec8cb918985780"},{"author":{"_account_id":18026,"name":"huanan","email":"huanan@huawei.com","username":"huanan"},"change_message_id":"a03778874f54de588c5d898b39e3e370bc070dd6","unresolved":false,"context_lines":[{"line_number":3456,"context_line":"    def test_delete_volume_success(self):"},{"line_number":3457,"context_line":"        self.driver.delete_volume(test_volume)"},{"line_number":3458,"context_line":""},{"line_number":3459,"context_line":"    def test_create_snapshot_success(self):"},{"line_number":3460,"context_line":"        lun_info \u003d self.driver.create_snapshot(test_snap)"},{"line_number":3461,"context_line":"        self.assertEqual(11, lun_info[\u0027provider_location\u0027])"},{"line_number":3462,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"7aa08908_e933c760","line":3459,"in_reply_to":"7aa08908_1ceaf7ac","updated":"2016-06-16 01:28:33.000000000","message":"We are plan to move same function to common area, there will be a  bug patch fix this.","commit_id":"323f2ef307047abe483fc066c6ec8cb918985780"},{"author":{"_account_id":21406,"name":"Vijay Ladani","email":"vijay.ladani@hpe.com","username":"vladani"},"change_message_id":"396815b09b34013d83d128139c2bc10610d106c8","unresolved":false,"context_lines":[{"line_number":3457,"context_line":"        self.driver.delete_volume(test_volume)"},{"line_number":3458,"context_line":""},{"line_number":3459,"context_line":"    def test_create_snapshot_success(self):"},{"line_number":3460,"context_line":"        lun_info \u003d self.driver.create_snapshot(test_snap)"},{"line_number":3461,"context_line":"        self.assertEqual(11, lun_info[\u0027provider_location\u0027])"},{"line_number":3462,"context_line":""},{"line_number":3463,"context_line":"        temp_snap_1 \u003d copy.deepcopy(test_snap)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7aa08908_dceb4f11","line":3460,"updated":"2016-06-15 12:35:54.000000000","message":"create_snapshot is being called 3 times. Only parameter values got changed every time. It can be optimized by using a loop.","commit_id":"323f2ef307047abe483fc066c6ec8cb918985780"},{"author":{"_account_id":18026,"name":"huanan","email":"huanan@huawei.com","username":"huanan"},"change_message_id":"a03778874f54de588c5d898b39e3e370bc070dd6","unresolved":false,"context_lines":[{"line_number":3457,"context_line":"        self.driver.delete_volume(test_volume)"},{"line_number":3458,"context_line":""},{"line_number":3459,"context_line":"    def test_create_snapshot_success(self):"},{"line_number":3460,"context_line":"        lun_info \u003d self.driver.create_snapshot(test_snap)"},{"line_number":3461,"context_line":"        self.assertEqual(11, lun_info[\u0027provider_location\u0027])"},{"line_number":3462,"context_line":""},{"line_number":3463,"context_line":"        temp_snap_1 \u003d copy.deepcopy(test_snap)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7aa08908_a9c53f0b","line":3460,"in_reply_to":"7aa08908_dceb4f11","updated":"2016-06-16 01:28:33.000000000","message":"I\u0027ll think about it, thank for your review.","commit_id":"323f2ef307047abe483fc066c6ec8cb918985780"}],"cinder/volume/drivers/huawei/huawei_driver.py":[{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"200e0e363b9e014aff95e7ba18628ae66c84bd2b","unresolved":false,"context_lines":[{"line_number":1405,"context_line":"                  {\u0027lun_name\u0027: lun_name,"},{"line_number":1406,"context_line":"                   \u0027new_name\u0027: new_name})"},{"line_number":1407,"context_line":"        try:"},{"line_number":1408,"context_line":"            self.client.rename_lun(lun_id, new_name)"},{"line_number":1409,"context_line":"        except Exception:"},{"line_number":1410,"context_line":"            LOG.warning(_LW(\"Rename lun %(lun_id)s fails when \""},{"line_number":1411,"context_line":"                            \"unmanaging volume %(volume)s.\"),"}],"source_content_type":"text/x-python","patch_set":12,"id":"dada55a8_48d3fb38","side":"PARENT","line":1408,"updated":"2016-07-18 14:07:44.000000000","message":"Why this is removed?","commit_id":"5c40bf9225eadc34e4a4dc77869793bef65f82e5"},{"author":{"_account_id":18026,"name":"huanan","email":"huanan@huawei.com","username":"huanan"},"change_message_id":"2260141f7e0dd07a8209ab6994e5ebb98dea3c42","unresolved":false,"context_lines":[{"line_number":1405,"context_line":"                  {\u0027lun_name\u0027: lun_name,"},{"line_number":1406,"context_line":"                   \u0027new_name\u0027: new_name})"},{"line_number":1407,"context_line":"        try:"},{"line_number":1408,"context_line":"            self.client.rename_lun(lun_id, new_name)"},{"line_number":1409,"context_line":"        except Exception:"},{"line_number":1410,"context_line":"            LOG.warning(_LW(\"Rename lun %(lun_id)s fails when \""},{"line_number":1411,"context_line":"                            \"unmanaging volume %(volume)s.\"),"}],"source_content_type":"text/x-python","patch_set":12,"id":"9ad45d7e_07791630","side":"PARENT","line":1408,"in_reply_to":"dada55a8_48d3fb38","updated":"2016-08-08 08:56:34.000000000","message":"There is no need to rename so we remove this, I have make a note of that in the commit message, thanks for your review.","commit_id":"5c40bf9225eadc34e4a4dc77869793bef65f82e5"},{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"200e0e363b9e014aff95e7ba18628ae66c84bd2b","unresolved":false,"context_lines":[{"line_number":1508,"context_line":"                   \u0027new_name\u0027: new_name})"},{"line_number":1509,"context_line":""},{"line_number":1510,"context_line":"        try:"},{"line_number":1511,"context_line":"            self.client.rename_snapshot(snapshot_id, new_name)"},{"line_number":1512,"context_line":"        except Exception:"},{"line_number":1513,"context_line":"            LOG.warning(_LW(\"Failed to rename snapshot %(snapshot_id)s, \""},{"line_number":1514,"context_line":"                            \"snapshot name on array is %(snapshot_name)s.\"),"}],"source_content_type":"text/x-python","patch_set":12,"id":"dada55a8_e8ee2feb","side":"PARENT","line":1511,"updated":"2016-07-18 14:07:44.000000000","message":"Same comment.","commit_id":"5c40bf9225eadc34e4a4dc77869793bef65f82e5"}],"cinder/volume/drivers/huawei/huawei_utils.py":[{"author":{"_account_id":9171,"name":"Vipin Balachandran","email":"vipin.bl@gmail.com","username":"vbala"},"change_message_id":"12ba29423ac3f7a1a4c631017b61b565c1973159","unresolved":false,"context_lines":[{"line_number":28,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"def encode_name(name):"},{"line_number":32,"context_line":"    pre_name \u003d name.split(\"-\")[0]"},{"line_number":33,"context_line":"    vol_encoded \u003d str(hash(name))"},{"line_number":34,"context_line":"    if vol_encoded.startswith(\u0027-\u0027):"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_44bd5267","line":31,"updated":"2016-06-12 16:58:49.000000000","message":"Can we have a unit test for this method? Normally we need a unit test for a bug fix patch which would fail without the  fix. Of course there can be exceptions, but this doesn\u0027t look like one. But if you feel strongly about not adding a test, please let me know and I\u0027m happy to change my vote. Thanks.","commit_id":"acbcbef3943d1a43d0113b6cad5beda6b2d4f165"},{"author":{"_account_id":18026,"name":"huanan","email":"huanan@huawei.com","username":"huanan"},"change_message_id":"417c356089c527114ccd9c2c96b414011af0240b","unresolved":false,"context_lines":[{"line_number":28,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"def encode_name(name):"},{"line_number":32,"context_line":"    pre_name \u003d name.split(\"-\")[0]"},{"line_number":33,"context_line":"    vol_encoded \u003d str(hash(name))"},{"line_number":34,"context_line":"    if vol_encoded.startswith(\u0027-\u0027):"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_d88ac5be","line":31,"in_reply_to":"7aa08908_44bd5267","updated":"2016-06-13 01:44:12.000000000","message":"Because hash value is different between py27 and py34, have a unit test for this method just like:\n\ndef test_encode(self)\n    lun_name \u003d huawei_utils.encode_name(test_volume[\u0027id\u0027])\n    self.assertEqual(huawei_utils.encode_name(test_volume[\u0027id\u0027]),\n                     lun_name)\n\ni think this unit test for this method is not necessary, there is already other unit test coveraged.","commit_id":"acbcbef3943d1a43d0113b6cad5beda6b2d4f165"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"e1a8b07ca1ebc32c3372d0595a4da3d3fb1b8fbe","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"def encode_name(name):"},{"line_number":32,"context_line":"    pre_name \u003d name.split(\"-\")[0]"},{"line_number":33,"context_line":"    vol_encoded \u003d str(hash(name))"},{"line_number":34,"context_line":"    if vol_encoded.startswith(\u0027-\u0027):"},{"line_number":35,"context_line":"        newuuid \u003d pre_name + vol_encoded"},{"line_number":36,"context_line":"    else:"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_1e650744","line":33,"updated":"2016-06-14 14:11:10.000000000","message":"str -\u003e six.text_type","commit_id":"acbcbef3943d1a43d0113b6cad5beda6b2d4f165"},{"author":{"_account_id":18026,"name":"huanan","email":"huanan@huawei.com","username":"huanan"},"change_message_id":"f058f2f550b256b4be9a4dd55d3745c0d4f588d6","unresolved":false,"context_lines":[{"line_number":30,"context_line":""},{"line_number":31,"context_line":"def encode_name(name):"},{"line_number":32,"context_line":"    pre_name \u003d name.split(\"-\")[0]"},{"line_number":33,"context_line":"    vol_encoded \u003d str(hash(name))"},{"line_number":34,"context_line":"    if vol_encoded.startswith(\u0027-\u0027):"},{"line_number":35,"context_line":"        newuuid \u003d pre_name + vol_encoded"},{"line_number":36,"context_line":"    else:"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aa08908_0310e757","line":33,"in_reply_to":"7aa08908_1e650744","updated":"2016-06-15 04:41:25.000000000","message":"Done","commit_id":"acbcbef3943d1a43d0113b6cad5beda6b2d4f165"}]}
