)]}'
{"cinder/tests/unit/volume/drivers/hpe/test_hpe3par.py":[{"author":{"_account_id":23113,"name":"Hariprasad S Venkatasubramanian","email":"hari.venkat@hpe.com","username":"hari.venkat"},"change_message_id":"6fbc87513e009db5bf7a70b362b09b8486955854","unresolved":false,"context_lines":[{"line_number":6671,"context_line":"            self.assertEqual(\u0027test-user\u0027, auth_username)"},{"line_number":6672,"context_line":"            self.assertEqual(\u0027test-pass\u0027, auth_password)"},{"line_number":6673,"context_line":""},{"line_number":6674,"context_line":"    def test_create_host_concurrent(self):"},{"line_number":6675,"context_line":"        # tests concurrent requests of create host"},{"line_number":6676,"context_line":"        # setup_mock_client driver with default configuration"},{"line_number":6677,"context_line":"        # and return the mock HTTP 3PAR client"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a74a57a_d8d75abd","line":6674,"range":{"start_line":6674,"start_character":8,"end_line":6674,"end_character":35},"updated":"2016-11-25 11:00:06.000000000","message":"There is a name clash between the test methods you have written for validating FC and iSCSI. Both have the same method name - test_create_host_concurrent(). So then the second in sequence will always take precedence. Please rename the methods suitably for maintaining visibility to both.","commit_id":"9b0c5c4318d3c348ce185a3f4dd94f9e803bf264"},{"author":{"_account_id":23113,"name":"Hariprasad S Venkatasubramanian","email":"hari.venkat@hpe.com","username":"hari.venkat"},"change_message_id":"e0ed6aaa585ef65692b9280ab75b2a32598d71b3","unresolved":false,"context_lines":[{"line_number":6671,"context_line":"            self.assertEqual(\u0027test-user\u0027, auth_username)"},{"line_number":6672,"context_line":"            self.assertEqual(\u0027test-pass\u0027, auth_password)"},{"line_number":6673,"context_line":""},{"line_number":6674,"context_line":"    def test_create_host_concurrent(self):"},{"line_number":6675,"context_line":"        # tests concurrent requests of create host"},{"line_number":6676,"context_line":"        # setup_mock_client driver with default configuration"},{"line_number":6677,"context_line":"        # and return the mock HTTP 3PAR client"}],"source_content_type":"text/x-python","patch_set":2,"id":"5a74a57a_5b51840d","line":6674,"range":{"start_line":6674,"start_character":8,"end_line":6674,"end_character":35},"in_reply_to":"5a74a57a_d8d75abd","updated":"2016-11-25 11:05:39.000000000","message":"Ok - i see that they are in different classes TestHPE3PARISCSIDriver and TestHPE3PARFCDriver, so there is no name clash. Please ignore my comment above.","commit_id":"9b0c5c4318d3c348ce185a3f4dd94f9e803bf264"}],"cinder/volume/drivers/hpe/hpe_3par_iscsi.py":[{"author":{"_account_id":23602,"name":"Michael Dovgal","email":"dovgalmichael@gmail.com","username":"mdovgal"},"change_message_id":"fc83d11f34c0d5fbb5f4ce18ae49f9674d9667cc","unresolved":false,"context_lines":[{"line_number":33,"context_line":"try:"},{"line_number":34,"context_line":"    from hpe3parclient import exceptions as hpeexceptions"},{"line_number":35,"context_line":"except ImportError:"},{"line_number":36,"context_line":"    hpeexceptions \u003d None"},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"from oslo_log import log as logging"},{"line_number":39,"context_line":"from oslo_utils.excutils import save_and_reraise_exception"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a77a97e_323fb226","line":36,"range":{"start_line":36,"start_character":4,"end_line":36,"end_character":17},"updated":"2016-11-22 15:43:31.000000000","message":"It doesn\u0027t connected to your patch, actually, but it seems we have a potential error because of this import.\n\nBelow we use some exceptions from hpeexceptions","commit_id":"a91315764b4d6a23a53d719dcc5846e2f2810def"},{"author":{"_account_id":23602,"name":"Michael Dovgal","email":"dovgalmichael@gmail.com","username":"mdovgal"},"change_message_id":"fc83d11f34c0d5fbb5f4ce18ae49f9674d9667cc","unresolved":false,"context_lines":[{"line_number":502,"context_line":""},{"line_number":503,"context_line":"        try:"},{"line_number":504,"context_line":"            common.client.removeVolumeMetaData(vol_name, CHAP_USER_KEY)"},{"line_number":505,"context_line":"        except hpeexceptions.HTTPNotFound:"},{"line_number":506,"context_line":"            pass"},{"line_number":507,"context_line":"        except Exception:"},{"line_number":508,"context_line":"            raise"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a77a97e_12d476bb","line":505,"range":{"start_line":505,"start_character":8,"end_line":505,"end_character":42},"updated":"2016-11-22 15:43:31.000000000","message":"And here can be \nAttributeError: \u0027NoneType\u0027 object has no attribute \u0027HTTPNotFound\u0027\nbecause of hpeexceptions\u003dNone.","commit_id":"a91315764b4d6a23a53d719dcc5846e2f2810def"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"320f84d9e70be7315ae1ac2af8392e845d278a9d","unresolved":false,"context_lines":[{"line_number":549,"context_line":"                                \u0027name\u0027 in hosts[\u0027members\u0027][0]):"},{"line_number":550,"context_line":"                            hostname \u003d hosts[\u0027members\u0027][0][\u0027name\u0027]"},{"line_number":551,"context_line":"                        else:"},{"line_number":552,"context_line":"                            # re rasise last caught exception"},{"line_number":553,"context_line":"                            ctxt.reraise \u003d True"},{"line_number":554,"context_line":"                            LOG.exception(msg, path_conflict.get_code())"},{"line_number":555,"context_line":"                    else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a74a57a_c3e850e5","line":552,"range":{"start_line":552,"start_character":33,"end_line":552,"end_character":39},"updated":"2016-11-25 09:11:19.000000000","message":"raise","commit_id":"a91315764b4d6a23a53d719dcc5846e2f2810def"},{"author":{"_account_id":21406,"name":"Vijay Ladani","email":"vijay.ladani@hpe.com","username":"vladani"},"change_message_id":"aaab627d3965bc7f15269e61ef89845ec4d3735f","unresolved":false,"context_lines":[{"line_number":549,"context_line":"                                \u0027name\u0027 in hosts[\u0027members\u0027][0]):"},{"line_number":550,"context_line":"                            hostname \u003d hosts[\u0027members\u0027][0][\u0027name\u0027]"},{"line_number":551,"context_line":"                        else:"},{"line_number":552,"context_line":"                            # re rasise last caught exception"},{"line_number":553,"context_line":"                            ctxt.reraise \u003d True"},{"line_number":554,"context_line":"                            LOG.exception(msg, path_conflict.get_code())"},{"line_number":555,"context_line":"                    else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a74a57a_49961ff1","line":552,"range":{"start_line":552,"start_character":33,"end_line":552,"end_character":39},"in_reply_to":"5a74a57a_c3e850e5","updated":"2016-11-25 10:05:33.000000000","message":"Done","commit_id":"a91315764b4d6a23a53d719dcc5846e2f2810def"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"320f84d9e70be7315ae1ac2af8392e845d278a9d","unresolved":false,"context_lines":[{"line_number":553,"context_line":"                            ctxt.reraise \u003d True"},{"line_number":554,"context_line":"                            LOG.exception(msg, path_conflict.get_code())"},{"line_number":555,"context_line":"                    else:"},{"line_number":556,"context_line":"                        # re rasise last caught exception"},{"line_number":557,"context_line":"                        # for other HTTP conflict"},{"line_number":558,"context_line":"                        ctxt.reraise \u003d True"},{"line_number":559,"context_line":"                        LOG.exception(msg, path_conflict.get_code())"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a74a57a_432d2045","line":556,"range":{"start_line":556,"start_character":29,"end_line":556,"end_character":35},"updated":"2016-11-25 09:11:19.000000000","message":"raise","commit_id":"a91315764b4d6a23a53d719dcc5846e2f2810def"},{"author":{"_account_id":21406,"name":"Vijay Ladani","email":"vijay.ladani@hpe.com","username":"vladani"},"change_message_id":"aaab627d3965bc7f15269e61ef89845ec4d3735f","unresolved":false,"context_lines":[{"line_number":553,"context_line":"                            ctxt.reraise \u003d True"},{"line_number":554,"context_line":"                            LOG.exception(msg, path_conflict.get_code())"},{"line_number":555,"context_line":"                    else:"},{"line_number":556,"context_line":"                        # re rasise last caught exception"},{"line_number":557,"context_line":"                        # for other HTTP conflict"},{"line_number":558,"context_line":"                        ctxt.reraise \u003d True"},{"line_number":559,"context_line":"                        LOG.exception(msg, path_conflict.get_code())"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a74a57a_29f9e34d","line":556,"range":{"start_line":556,"start_character":29,"end_line":556,"end_character":35},"in_reply_to":"5a74a57a_432d2045","updated":"2016-11-25 10:05:33.000000000","message":"Done","commit_id":"a91315764b4d6a23a53d719dcc5846e2f2810def"},{"author":{"_account_id":21407,"name":"Kushal Wathore","email":"kushal.wathore@hpe.com","username":"kwathore"},"change_message_id":"655c1d9b03426cb179fc23178cb173ae02d54139","unresolved":false,"context_lines":[{"line_number":565,"context_line":""},{"line_number":566,"context_line":"        try:"},{"line_number":567,"context_line":"            common.client.modifyHost(hostname, mod_request)"},{"line_number":568,"context_line":"        except hpeexceptions.HTTPConflict as path_conflict:"},{"line_number":569,"context_line":"            msg \u003d _LE(\"Modify iSCSI Host %(hostname)s caught \""},{"line_number":570,"context_line":"                      \"HTTP conflict code: %(code)s\")"},{"line_number":571,"context_line":"            LOG.exception(msg,"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a74a57a_63f5d3c9","line":568,"range":{"start_line":568,"start_character":8,"end_line":568,"end_character":14},"updated":"2016-11-24 15:29:51.000000000","message":"I am not getting why this changes needed here for this bug fix.. could you please explain.\nAs per my understanding, this function will not get called for this scenario.","commit_id":"a91315764b4d6a23a53d719dcc5846e2f2810def"},{"author":{"_account_id":21406,"name":"Vijay Ladani","email":"vijay.ladani@hpe.com","username":"vladani"},"change_message_id":"aaab627d3965bc7f15269e61ef89845ec4d3735f","unresolved":false,"context_lines":[{"line_number":565,"context_line":""},{"line_number":566,"context_line":"        try:"},{"line_number":567,"context_line":"            common.client.modifyHost(hostname, mod_request)"},{"line_number":568,"context_line":"        except hpeexceptions.HTTPConflict as path_conflict:"},{"line_number":569,"context_line":"            msg \u003d _LE(\"Modify iSCSI Host %(hostname)s caught \""},{"line_number":570,"context_line":"                      \"HTTP conflict code: %(code)s\")"},{"line_number":571,"context_line":"            LOG.exception(msg,"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a74a57a_c9030f41","line":568,"range":{"start_line":568,"start_character":8,"end_line":568,"end_character":14},"in_reply_to":"5a74a57a_63f5d3c9","updated":"2016-11-25 10:05:33.000000000","message":"Agree, its irrelevant to bug fix. I thought of keeping code same for both iscsi and fc files. Removing this additional changes.","commit_id":"a91315764b4d6a23a53d719dcc5846e2f2810def"},{"author":{"_account_id":11600,"name":"Michał Dulko","email":"michal.dulko@gmail.com","username":"dulek"},"change_message_id":"320f84d9e70be7315ae1ac2af8392e845d278a9d","unresolved":false,"context_lines":[{"line_number":563,"context_line":"        mod_request \u003d {\u0027pathOperation\u0027: common.client.HOST_EDIT_ADD,"},{"line_number":564,"context_line":"                       \u0027iSCSINames\u0027: [iscsi_iqn]}"},{"line_number":565,"context_line":""},{"line_number":566,"context_line":"        try:"},{"line_number":567,"context_line":"            common.client.modifyHost(hostname, mod_request)"},{"line_number":568,"context_line":"        except hpeexceptions.HTTPConflict as path_conflict:"},{"line_number":569,"context_line":"            msg \u003d _LE(\"Modify iSCSI Host %(hostname)s caught \""},{"line_number":570,"context_line":"                      \"HTTP conflict code: %(code)s\")"},{"line_number":571,"context_line":"            LOG.exception(msg,"},{"line_number":572,"context_line":"                          {\u0027hostname\u0027: hostname,"},{"line_number":573,"context_line":"                           \u0027code\u0027: path_conflict.get_code()})"},{"line_number":574,"context_line":""},{"line_number":575,"context_line":"    def _set_3par_chaps(self, common, hostname, volume, username, password):"},{"line_number":576,"context_line":"        \"\"\"Sets a 3PAR host\u0027s CHAP credentials.\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"5a74a57a_23ee64ec","line":573,"range":{"start_line":566,"start_character":0,"end_line":573,"end_character":61},"updated":"2016-11-25 09:11:19.000000000","message":"If we\u0027re changing this, I would prefer to have tests covering this case.","commit_id":"a91315764b4d6a23a53d719dcc5846e2f2810def"},{"author":{"_account_id":21406,"name":"Vijay Ladani","email":"vijay.ladani@hpe.com","username":"vladani"},"change_message_id":"aaab627d3965bc7f15269e61ef89845ec4d3735f","unresolved":false,"context_lines":[{"line_number":563,"context_line":"        mod_request \u003d {\u0027pathOperation\u0027: common.client.HOST_EDIT_ADD,"},{"line_number":564,"context_line":"                       \u0027iSCSINames\u0027: [iscsi_iqn]}"},{"line_number":565,"context_line":""},{"line_number":566,"context_line":"        try:"},{"line_number":567,"context_line":"            common.client.modifyHost(hostname, mod_request)"},{"line_number":568,"context_line":"        except hpeexceptions.HTTPConflict as path_conflict:"},{"line_number":569,"context_line":"            msg \u003d _LE(\"Modify iSCSI Host %(hostname)s caught \""},{"line_number":570,"context_line":"                      \"HTTP conflict code: %(code)s\")"},{"line_number":571,"context_line":"            LOG.exception(msg,"},{"line_number":572,"context_line":"                          {\u0027hostname\u0027: hostname,"},{"line_number":573,"context_line":"                           \u0027code\u0027: path_conflict.get_code()})"},{"line_number":574,"context_line":""},{"line_number":575,"context_line":"    def _set_3par_chaps(self, common, hostname, volume, username, password):"},{"line_number":576,"context_line":"        \"\"\"Sets a 3PAR host\u0027s CHAP credentials.\"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"5a74a57a_09fee736","line":573,"range":{"start_line":566,"start_character":0,"end_line":573,"end_character":61},"in_reply_to":"5a74a57a_23ee64ec","updated":"2016-11-25 10:05:33.000000000","message":"Done","commit_id":"a91315764b4d6a23a53d719dcc5846e2f2810def"}]}
