)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"95b47a1e25a5b0e9b2cd20104134dd80ae62d368","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Gerald McBrearty \u003cgfm@us.ibm.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-03-31 07:59:22 -0500"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Storwize: fix unmaped multi-attached volume failure"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"On terminate_connection if the volume is not mapped to the host"},{"line_number":10,"context_line":"entry in the connector but is mapped to another host entry then"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ba0121b8_f0505234","line":7,"updated":"2016-03-31 14:20:47.000000000","message":"unmapped","commit_id":"d3c00afaf581bcc9582b08283a6a9c06e98f637b"},{"author":{"_account_id":14532,"name":"Gerald McBrearty","email":"gfm@us.ibm.com","username":"gfm"},"change_message_id":"19974d41dec9dcaa10dae7dac31a1050fcab1fd0","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Gerald McBrearty \u003cgfm@us.ibm.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2016-03-31 07:59:22 -0500"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Storwize: fix unmaped multi-attached volume failure"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"On terminate_connection if the volume is not mapped to the host"},{"line_number":10,"context_line":"entry in the connector but is mapped to another host entry then"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ba0121b8_f07afd22","line":7,"in_reply_to":"ba0121b8_f0505234","updated":"2016-03-31 19:37:58.000000000","message":"will take care of that","commit_id":"d3c00afaf581bcc9582b08283a6a9c06e98f637b"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"95b47a1e25a5b0e9b2cd20104134dd80ae62d368","unresolved":false,"context_lines":[{"line_number":10,"context_line":"entry in the connector but is mapped to another host entry then"},{"line_number":11,"context_line":"continue on and don\u0027t try to remove the entry that we have already"},{"line_number":12,"context_line":"determined does not exist.  When no mappings are found the driver will"},{"line_number":13,"context_line":"continues on, so this change duplicates the same behavior when no mappings"},{"line_number":14,"context_line":"are found for the given connector."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"UT added."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ba0121b8_b0537a38","line":13,"updated":"2016-03-31 14:20:47.000000000","message":"continue\n\nthis line is longer than 72 characters","commit_id":"d3c00afaf581bcc9582b08283a6a9c06e98f637b"},{"author":{"_account_id":14532,"name":"Gerald McBrearty","email":"gfm@us.ibm.com","username":"gfm"},"change_message_id":"19974d41dec9dcaa10dae7dac31a1050fcab1fd0","unresolved":false,"context_lines":[{"line_number":10,"context_line":"entry in the connector but is mapped to another host entry then"},{"line_number":11,"context_line":"continue on and don\u0027t try to remove the entry that we have already"},{"line_number":12,"context_line":"determined does not exist.  When no mappings are found the driver will"},{"line_number":13,"context_line":"continues on, so this change duplicates the same behavior when no mappings"},{"line_number":14,"context_line":"are found for the given connector."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"UT added."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"ba0121b8_b084050b","line":13,"in_reply_to":"ba0121b8_b0537a38","updated":"2016-03-31 19:37:58.000000000","message":"will take care of this","commit_id":"d3c00afaf581bcc9582b08283a6a9c06e98f637b"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"8620037d9479c8950204d5f690e703195d5a66e9","unresolved":false,"context_lines":[{"line_number":9,"context_line":"On terminate_connection if the volume is not mapped to the host"},{"line_number":10,"context_line":"entry in the connector but it is mapped to another host entry, then"},{"line_number":11,"context_line":"continue on and don\u0027t try to remove the entry that we have already"},{"line_number":12,"context_line":"determined does not exist. However return the known host name in when"},{"line_number":13,"context_line":"this happens so host entry can be deleted and and ITM generated if"},{"line_number":14,"context_line":"there are no other volumes mapped to that host entry for this connector."},{"line_number":15,"context_line":"When no mapping is found on for a volume return the host name which"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_b250500c","line":12,"updated":"2016-04-01 21:00:54.000000000","message":"s/in//","commit_id":"6531f393e7e0ff07d0aa21d240737efd405c0e28"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"8620037d9479c8950204d5f690e703195d5a66e9","unresolved":false,"context_lines":[{"line_number":12,"context_line":"determined does not exist. However return the known host name in when"},{"line_number":13,"context_line":"this happens so host entry can be deleted and and ITM generated if"},{"line_number":14,"context_line":"there are no other volumes mapped to that host entry for this connector."},{"line_number":15,"context_line":"When no mapping is found on for a volume return the host name which"},{"line_number":16,"context_line":"triggers the deletion of the host entry and generation of the ITM if"},{"line_number":17,"context_line":"there are no other volumes mapped to that host entry."},{"line_number":18,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"ba0121b8_5240d435","line":15,"updated":"2016-04-01 21:00:54.000000000","message":"s/on//","commit_id":"6531f393e7e0ff07d0aa21d240737efd405c0e28"}],"cinder/tests/unit/test_storwize_svc.py":[{"author":{"_account_id":17045,"name":"xiaoqin","email":"xiaoqin.li@hotmail.com","username":"xiaoqin"},"change_message_id":"3c8b3cd574d2deab6565de84e12b3e81c48683f5","unresolved":false,"context_lines":[{"line_number":1116,"context_line":"        vol \u003d kwargs[\u0027obj\u0027].strip(\u0027\\\u0027\\\"\u0027)"},{"line_number":1117,"context_line":""},{"line_number":1118,"context_line":"        if (self._next_cmd_error[\u0027rmvdiskhostmap\u0027] \u003d\u003d \u0027missing_mapping\u0027):"},{"line_number":1119,"context_line":"            self._next_cmd_error[\u0027rmvdiskhostmap\u0027] \u003d\u003d \u0027\u0027"},{"line_number":1120,"context_line":"            return self._errors[\u0027CMMVC5753E\u0027]"},{"line_number":1121,"context_line":"        mapping_ids \u003d []"},{"line_number":1122,"context_line":"        for v in self._mappings_list.values():"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba0121b8_8a8e1b77","line":1119,"range":{"start_line":1119,"start_character":0,"end_line":1119,"end_character":56},"updated":"2016-03-31 07:50:27.000000000","message":"It should be only one equal sign？","commit_id":"f616b45a344955d002606b7897774f0f77466114"},{"author":{"_account_id":7173,"name":"Scott DAngelo","email":"scott.dangelo@gmail.com","username":"scottda"},"change_message_id":"90cb51c4f81f2d23e9aed7ea88b5afb5dde72139","unresolved":false,"context_lines":[{"line_number":1116,"context_line":"        vol \u003d kwargs[\u0027obj\u0027].strip(\u0027\\\u0027\\\"\u0027)"},{"line_number":1117,"context_line":""},{"line_number":1118,"context_line":"        if (self._next_cmd_error[\u0027rmvdiskhostmap\u0027] \u003d\u003d \u0027missing_mapping\u0027):"},{"line_number":1119,"context_line":"            self._next_cmd_error[\u0027rmvdiskhostmap\u0027] \u003d\u003d \u0027\u0027"},{"line_number":1120,"context_line":"            return self._errors[\u0027CMMVC5753E\u0027]"},{"line_number":1121,"context_line":"        mapping_ids \u003d []"},{"line_number":1122,"context_line":"        for v in self._mappings_list.values():"}],"source_content_type":"text/x-python","patch_set":1,"id":"ba0121b8_f5e4cbe0","line":1119,"range":{"start_line":1119,"start_character":0,"end_line":1119,"end_character":56},"in_reply_to":"ba0121b8_8a8e1b77","updated":"2016-03-31 11:58:20.000000000","message":"That looks like a typo to me as well. Should be only \u0027\u003d\u0027","commit_id":"f616b45a344955d002606b7897774f0f77466114"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"95b47a1e25a5b0e9b2cd20104134dd80ae62d368","unresolved":false,"context_lines":[{"line_number":1995,"context_line":"        # map and unmap the volume to two hosts with the mapping gone"},{"line_number":1996,"context_line":"        self.iscsi_driver.initialize_connection(volume_iSCSI, connector)"},{"line_number":1997,"context_line":"        self.iscsi_driver.initialize_connection(volume_iSCSI, connector2)"},{"line_number":1998,"context_line":"        if self.USESIM:"},{"line_number":1999,"context_line":"            # don\u0027t report mapping for STORWIZE-SVC-HOST"},{"line_number":2000,"context_line":"            self.sim.error_injection(\u0027lsvdiskhostmap\u0027, \u0027missing_mapping\u0027)"},{"line_number":2001,"context_line":"            # make rmvidskhostmap fail if call it so the testcase will fail"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba0121b8_ddd9e658","line":1998,"updated":"2016-03-31 14:20:47.000000000","message":"so I\u0027m curious: self.USESIM is initialized to True in this file and never set otherwise.  What\u0027s the point of the extra logic complication?\n\nI know you are just following the conventions for the test module as a whole.","commit_id":"d3c00afaf581bcc9582b08283a6a9c06e98f637b"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"95b47a1e25a5b0e9b2cd20104134dd80ae62d368","unresolved":false,"context_lines":[{"line_number":2453,"context_line":"                          volume_fc, connector)"},{"line_number":2454,"context_line":"        term_conn.assert_called_once_with(volume_fc, connector)"},{"line_number":2455,"context_line":""},{"line_number":2456,"context_line":"    def test_storwize_terminate_fc_connection_multi_attach(self):"},{"line_number":2457,"context_line":"        # create a FC volume"},{"line_number":2458,"context_line":"        volume_fc \u003d self._create_volume()"},{"line_number":2459,"context_line":"        extra_spec \u003d {\u0027capabilities:storage_protocol\u0027: \u0027\u003cin\u003e FC\u0027}"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba0121b8_3d0aa279","line":2456,"updated":"2016-03-31 14:20:47.000000000","message":"FWIW these seem more like functional tests with a simulator than unit tests.  They don\u0027t assert anything, but rather just run through code paths without blowing up.","commit_id":"d3c00afaf581bcc9582b08283a6a9c06e98f637b"},{"author":{"_account_id":14532,"name":"Gerald McBrearty","email":"gfm@us.ibm.com","username":"gfm"},"change_message_id":"19974d41dec9dcaa10dae7dac31a1050fcab1fd0","unresolved":false,"context_lines":[{"line_number":2453,"context_line":"                          volume_fc, connector)"},{"line_number":2454,"context_line":"        term_conn.assert_called_once_with(volume_fc, connector)"},{"line_number":2455,"context_line":""},{"line_number":2456,"context_line":"    def test_storwize_terminate_fc_connection_multi_attach(self):"},{"line_number":2457,"context_line":"        # create a FC volume"},{"line_number":2458,"context_line":"        volume_fc \u003d self._create_volume()"},{"line_number":2459,"context_line":"        extra_spec \u003d {\u0027capabilities:storage_protocol\u0027: \u0027\u003cin\u003e FC\u0027}"}],"source_content_type":"text/x-python","patch_set":2,"id":"ba0121b8_509f695e","line":2456,"in_reply_to":"ba0121b8_3d0aa279","updated":"2016-03-31 19:37:58.000000000","message":"let me think about what I can assert here.","commit_id":"d3c00afaf581bcc9582b08283a6a9c06e98f637b"}]}
