)]}'
{"cinder/tests/unit/volume/drivers/emc/test_emc_vmax.py":[{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"bc90128783df3bbb345173f7ee212e12e139fd97","unresolved":false,"context_lines":[{"line_number":1934,"context_line":"        return False"},{"line_number":1935,"context_line":""},{"line_number":1936,"context_line":"    def test_slo_empty_tag(self):"},{"line_number":1937,"context_line":"        filename \u003d \u0027cinder_emc_config_slo_empty_tage\u0027"},{"line_number":1938,"context_line":"        tempdir \u003d tempfile.mkdtemp()"},{"line_number":1939,"context_line":"        config_file \u003d tempdir + \u0027/\u0027 + filename"},{"line_number":1940,"context_line":"        text_file \u003d open(config_file, \"w\")"}],"source_content_type":"text/x-python","patch_set":8,"id":"fa7ab95a_ab118bb1","line":1937,"updated":"2016-09-01 02:15:42.000000000","message":"s/tage/tag","commit_id":"709c634532fa408d761f6f9107bf8d1afbe6301b"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"be17762fbe3bc12104c1b5d366d8d6aeaf467b4e","unresolved":false,"context_lines":[{"line_number":1934,"context_line":"        return False"},{"line_number":1935,"context_line":""},{"line_number":1936,"context_line":"    def test_slo_empty_tag(self):"},{"line_number":1937,"context_line":"        filename \u003d \u0027cinder_emc_config_slo_empty_tage\u0027"},{"line_number":1938,"context_line":"        tempdir \u003d tempfile.mkdtemp()"},{"line_number":1939,"context_line":"        config_file \u003d tempdir + \u0027/\u0027 + filename"},{"line_number":1940,"context_line":"        text_file \u003d open(config_file, \"w\")"}],"source_content_type":"text/x-python","patch_set":8,"id":"fa7ab95a_985b1bf6","line":1937,"in_reply_to":"fa7ab95a_ab118bb1","updated":"2016-09-01 13:37:16.000000000","message":"Thanks, we will change this","commit_id":"709c634532fa408d761f6f9107bf8d1afbe6301b"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"284cba5c3f19dbe1bfee6d8a53acf00944406e12","unresolved":false,"context_lines":[{"line_number":6056,"context_line":"                      \u0027storagetype:array\u0027: \u00271234567891011\u0027,"},{"line_number":6057,"context_line":"                      \u0027isV3\u0027: True,"},{"line_number":6058,"context_line":"                      \u0027portgroupname\u0027: \u0027OS-portgroup-PG\u0027}"},{"line_number":6059,"context_line":"        self.driver.common._get_or_create_storage_group_v3 \u003d mock.Mock("},{"line_number":6060,"context_line":"            return_value \u003d self.data.default_sg_instance_name)"},{"line_number":6061,"context_line":"        self.driver.common._initial_setup \u003d mock.Mock("},{"line_number":6062,"context_line":"            return_value\u003dextraSpecs)"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa7ab95a_14a8961f","line":6059,"updated":"2016-09-02 00:50:05.000000000","message":"Please mock the method.  Don\u0027t change it directly.","commit_id":"183c35bd909062831798cac8acb9340c6f27856f"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"284cba5c3f19dbe1bfee6d8a53acf00944406e12","unresolved":false,"context_lines":[{"line_number":6058,"context_line":"                      \u0027portgroupname\u0027: \u0027OS-portgroup-PG\u0027}"},{"line_number":6059,"context_line":"        self.driver.common._get_or_create_storage_group_v3 \u003d mock.Mock("},{"line_number":6060,"context_line":"            return_value \u003d self.data.default_sg_instance_name)"},{"line_number":6061,"context_line":"        self.driver.common._initial_setup \u003d mock.Mock("},{"line_number":6062,"context_line":"            return_value\u003dextraSpecs)"},{"line_number":6063,"context_line":""},{"line_number":6064,"context_line":"        self.driver.create_volume(v3_vol)"}],"source_content_type":"text/x-python","patch_set":9,"id":"fa7ab95a_34a59a46","line":6061,"updated":"2016-09-02 00:50:05.000000000","message":"Same.","commit_id":"183c35bd909062831798cac8acb9340c6f27856f"}],"cinder/volume/drivers/emc/emc_vmax_common.py":[{"author":{"_account_id":12802,"name":"Carl Pecinovsky","email":"csky@us.ibm.com","username":"carl-sky"},"change_message_id":"db56a64f0c8c819b8779bab7ebb614166a5eef7a","unresolved":false,"context_lines":[{"line_number":1804,"context_line":"                    \u0027poolName\u0027: uniqueName,"},{"line_number":1805,"context_line":"                    \u0027slo\u0027: slo,"},{"line_number":1806,"context_line":"                    \u0027workload\u0027: workload}))"},{"line_number":1807,"context_line":"            if slo:"},{"line_number":1808,"context_line":"                prefix \u003d ("},{"line_number":1809,"context_line":"                    (\"OS-%(shortHostName)s-%(poolName)s-%(slo)s-%(workload)s\""},{"line_number":1810,"context_line":"                     % {\u0027shortHostName\u0027: shortHostName,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_2e7932fd","line":1807,"updated":"2016-04-22 21:06:30.000000000","message":"I thought that slo would contain the string \"NONE\", not the Python value None until I looked at the other part changes. So this is OK, but would be better to be:\n\nif not slo:\n    prefix \u003d \u003celse branch\u003e\n\nsince prefix is already correct for the normal SLO path, right?","commit_id":"d81e55c1d8377ae6bb6de6c3ec24661da60d1415"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"8e601e9742b6b4fbaedac411df3dc95bc7903db8","unresolved":false,"context_lines":[{"line_number":1804,"context_line":"                    \u0027poolName\u0027: uniqueName,"},{"line_number":1805,"context_line":"                    \u0027slo\u0027: slo,"},{"line_number":1806,"context_line":"                    \u0027workload\u0027: workload}))"},{"line_number":1807,"context_line":"            if slo:"},{"line_number":1808,"context_line":"                prefix \u003d ("},{"line_number":1809,"context_line":"                    (\"OS-%(shortHostName)s-%(poolName)s-%(slo)s-%(workload)s\""},{"line_number":1810,"context_line":"                     % {\u0027shortHostName\u0027: shortHostName,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_d3cdb0b8","line":1807,"in_reply_to":"1a122d0e_2e7932fd","updated":"2016-04-24 16:04:10.000000000","message":"Yes, I will change it","commit_id":"d81e55c1d8377ae6bb6de6c3ec24661da60d1415"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"53d9db4a6e6621dfbff4b1651ad515537ba2b79c","unresolved":false,"context_lines":[{"line_number":2904,"context_line":"                if not storagePoolSetting:"},{"line_number":2905,"context_line":"                    exceptionMessage \u003d (_("},{"line_number":2906,"context_line":"                        \"The array does not support the storage pool setting \""},{"line_number":2907,"context_line":"                        \"for SLO %(slo)s or workload %(workload)s.  Please \""},{"line_number":2908,"context_line":"                        \"check the array for valid SLOs and workloads.\")"},{"line_number":2909,"context_line":"                        % {\u0027slo\u0027: extraSpecs[SLO],"},{"line_number":2910,"context_line":"                           \u0027workload\u0027: extraSpecs[WORKLOAD]})"}],"source_content_type":"text/x-python","patch_set":2,"id":"dab17558_ff4978d1","line":2907,"updated":"2016-05-15 05:46:59.000000000","message":"nit: Remove one space before \"Please\".","commit_id":"66c60bdbae053c6839a19d1e5f52aa237ce6393f"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"b48b62d488ff3be3c9da7c438a7e6ee3b88320cd","unresolved":false,"context_lines":[{"line_number":2904,"context_line":"                if not storagePoolSetting:"},{"line_number":2905,"context_line":"                    exceptionMessage \u003d (_("},{"line_number":2906,"context_line":"                        \"The array does not support the storage pool setting \""},{"line_number":2907,"context_line":"                        \"for SLO %(slo)s or workload %(workload)s.  Please \""},{"line_number":2908,"context_line":"                        \"check the array for valid SLOs and workloads.\")"},{"line_number":2909,"context_line":"                        % {\u0027slo\u0027: extraSpecs[SLO],"},{"line_number":2910,"context_line":"                           \u0027workload\u0027: extraSpecs[WORKLOAD]})"}],"source_content_type":"text/x-python","patch_set":2,"id":"bab6814e_44c5723a","line":2907,"in_reply_to":"dab17558_ff4978d1","updated":"2016-05-25 11:10:45.000000000","message":"will do.  Thanks","commit_id":"66c60bdbae053c6839a19d1e5f52aa237ce6393f"}],"cinder/volume/drivers/emc/emc_vmax_fc.py":[{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"bc90128783df3bbb345173f7ee212e12e139fd97","unresolved":false,"context_lines":[{"line_number":71,"context_line":"              - SnapVX licensing checks for VMAX3 (bug #1587017)"},{"line_number":72,"context_line":"              - VMAX oversubscription Support (blueprint vmax-oversubscription)"},{"line_number":73,"context_line":"              - QoS support (blueprint vmax-qos)"},{"line_number":74,"context_line":"              - multi-attach failure to VMAX3 when SLO is omitted (bug 1567577)"},{"line_number":75,"context_line":"    \"\"\""},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"    VERSION \u003d \"2.4.0\""}],"source_content_type":"text/x-python","patch_set":8,"id":"fa7ab95a_0b0fd788","line":74,"updated":"2016-09-01 02:15:42.000000000","message":"Version history is still here.","commit_id":"709c634532fa408d761f6f9107bf8d1afbe6301b"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"be17762fbe3bc12104c1b5d366d8d6aeaf467b4e","unresolved":false,"context_lines":[{"line_number":71,"context_line":"              - SnapVX licensing checks for VMAX3 (bug #1587017)"},{"line_number":72,"context_line":"              - VMAX oversubscription Support (blueprint vmax-oversubscription)"},{"line_number":73,"context_line":"              - QoS support (blueprint vmax-qos)"},{"line_number":74,"context_line":"              - multi-attach failure to VMAX3 when SLO is omitted (bug 1567577)"},{"line_number":75,"context_line":"    \"\"\""},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"    VERSION \u003d \"2.4.0\""}],"source_content_type":"text/x-python","patch_set":8,"id":"fa7ab95a_d8f4c3d0","line":74,"in_reply_to":"fa7ab95a_0b0fd788","updated":"2016-09-01 13:37:16.000000000","message":"Will will remove","commit_id":"709c634532fa408d761f6f9107bf8d1afbe6301b"}],"cinder/volume/drivers/emc/emc_vmax_iscsi.py":[{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"bc90128783df3bbb345173f7ee212e12e139fd97","unresolved":false,"context_lines":[{"line_number":79,"context_line":"              - QoS support (blueprint vmax-qos)"},{"line_number":80,"context_line":"              - VMAX2/VMAX3 iscsi multipath support (iscsi only)"},{"line_number":81,"context_line":"              https://blueprints.launchpad.net/cinder/+spec/vmax-iscsi-multipath"},{"line_number":82,"context_line":"              - multi-attach failure to VMAX3 when SLO is omitted (bug 1567577)"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"    \"\"\""},{"line_number":85,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"fa7ab95a_2b265b16","line":82,"updated":"2016-09-01 02:15:42.000000000","message":"Version history is still here.","commit_id":"709c634532fa408d761f6f9107bf8d1afbe6301b"}],"cinder/volume/drivers/emc/emc_vmax_provision_v3.py":[{"author":{"_account_id":12802,"name":"Carl Pecinovsky","email":"csky@us.ibm.com","username":"carl-sky"},"change_message_id":"db56a64f0c8c819b8779bab7ebb614166a5eef7a","unresolved":false,"context_lines":[{"line_number":375,"context_line":"        else:"},{"line_number":376,"context_line":"            rc, job \u003d conn.InvokeMethod("},{"line_number":377,"context_line":"                \u0027CreateGroup\u0027,"},{"line_number":378,"context_line":"                controllerConfigService,"},{"line_number":379,"context_line":"                GroupName\u003dgroupName,"},{"line_number":380,"context_line":"                Type\u003dself.utils.get_num(4, \u002716\u0027))"},{"line_number":381,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_a941bc3b","line":378,"updated":"2016-04-22 21:06:30.000000000","message":"It is expected that EMCSRP is not specified for this case?","commit_id":"d81e55c1d8377ae6bb6de6c3ec24661da60d1415"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"8e601e9742b6b4fbaedac411df3dc95bc7903db8","unresolved":false,"context_lines":[{"line_number":375,"context_line":"        else:"},{"line_number":376,"context_line":"            rc, job \u003d conn.InvokeMethod("},{"line_number":377,"context_line":"                \u0027CreateGroup\u0027,"},{"line_number":378,"context_line":"                controllerConfigService,"},{"line_number":379,"context_line":"                GroupName\u003dgroupName,"},{"line_number":380,"context_line":"                Type\u003dself.utils.get_num(4, \u002716\u0027))"},{"line_number":381,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_932fb83d","line":378,"in_reply_to":"1a122d0e_a941bc3b","updated":"2016-04-24 16:04:10.000000000","message":"Yes that is correct.  For non fast the SRP is not an input.","commit_id":"d81e55c1d8377ae6bb6de6c3ec24661da60d1415"},{"author":{"_account_id":12802,"name":"Carl Pecinovsky","email":"csky@us.ibm.com","username":"carl-sky"},"change_message_id":"db56a64f0c8c819b8779bab7ebb614166a5eef7a","unresolved":false,"context_lines":[{"line_number":735,"context_line":"        :param systemName: the system name"},{"line_number":736,"context_line":"        :returns: remainingCapacityGb"},{"line_number":737,"context_line":"        \"\"\""},{"line_number":738,"context_line":"        remainingCapacityGb \u003d -1"},{"line_number":739,"context_line":"        if arrayInfo[\u0027SLO\u0027]:"},{"line_number":740,"context_line":"            storageConfigService \u003d ("},{"line_number":741,"context_line":"                self.utils.find_storage_configuration_service("}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_c95078d7","line":738,"updated":"2016-04-22 21:06:30.000000000","message":"remaining capacity will be -1 if SLO is not configured? Should be just the normal pool free capacity value instead?","commit_id":"d81e55c1d8377ae6bb6de6c3ec24661da60d1415"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"8e601e9742b6b4fbaedac411df3dc95bc7903db8","unresolved":false,"context_lines":[{"line_number":735,"context_line":"        :param systemName: the system name"},{"line_number":736,"context_line":"        :returns: remainingCapacityGb"},{"line_number":737,"context_line":"        \"\"\""},{"line_number":738,"context_line":"        remainingCapacityGb \u003d -1"},{"line_number":739,"context_line":"        if arrayInfo[\u0027SLO\u0027]:"},{"line_number":740,"context_line":"            storageConfigService \u003d ("},{"line_number":741,"context_line":"                self.utils.find_storage_configuration_service("}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_5316c0f1","line":738,"in_reply_to":"1a122d0e_c95078d7","updated":"2016-04-24 16:04:10.000000000","message":"This method is not called if SLO is None.  I will double check to be sure.","commit_id":"d81e55c1d8377ae6bb6de6c3ec24661da60d1415"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"53d9db4a6e6621dfbff4b1651ad515537ba2b79c","unresolved":false,"context_lines":[{"line_number":747,"context_line":"                    arrayInfo[\u0027SLO\u0027], arrayInfo[\u0027Workload\u0027],"},{"line_number":748,"context_line":"                    None))"},{"line_number":749,"context_line":"            try:"},{"line_number":750,"context_line":"                if supportedSizeDict[\u0027EMCInformationSource\u0027] \u003d\u003d 3:"},{"line_number":751,"context_line":"                    remainingCapacityGb \u003d self.utils.convert_bits_to_gbs("},{"line_number":752,"context_line":"                        supportedSizeDict[\u0027EMCRemainingSLOCapacity\u0027])"},{"line_number":753,"context_line":"                    LOG.debug(\"Received remaining SLO Capacity \""}],"source_content_type":"text/x-python","patch_set":2,"id":"dab17558_5f38843d","line":750,"updated":"2016-05-15 05:46:59.000000000","message":"This should still be the constant INFO_SRC_V3.","commit_id":"66c60bdbae053c6839a19d1e5f52aa237ce6393f"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"b48b62d488ff3be3c9da7c438a7e6ee3b88320cd","unresolved":false,"context_lines":[{"line_number":747,"context_line":"                    arrayInfo[\u0027SLO\u0027], arrayInfo[\u0027Workload\u0027],"},{"line_number":748,"context_line":"                    None))"},{"line_number":749,"context_line":"            try:"},{"line_number":750,"context_line":"                if supportedSizeDict[\u0027EMCInformationSource\u0027] \u003d\u003d 3:"},{"line_number":751,"context_line":"                    remainingCapacityGb \u003d self.utils.convert_bits_to_gbs("},{"line_number":752,"context_line":"                        supportedSizeDict[\u0027EMCRemainingSLOCapacity\u0027])"},{"line_number":753,"context_line":"                    LOG.debug(\"Received remaining SLO Capacity \""}],"source_content_type":"text/x-python","patch_set":2,"id":"bab6814e_474a94c6","line":750,"in_reply_to":"dab17558_5f38843d","updated":"2016-05-25 11:10:45.000000000","message":"Ok. I will change it","commit_id":"66c60bdbae053c6839a19d1e5f52aa237ce6393f"}],"cinder/volume/drivers/emc/emc_vmax_utils.py":[{"author":{"_account_id":12802,"name":"Carl Pecinovsky","email":"csky@us.ibm.com","username":"carl-sky"},"change_message_id":"db56a64f0c8c819b8779bab7ebb614166a5eef7a","unresolved":false,"context_lines":[{"line_number":1853,"context_line":"        kwargs[\u0027SLO\u0027] \u003d slo"},{"line_number":1854,"context_line":"        workload \u003d self._process_tag(element, \u0027Workload\u0027)"},{"line_number":1855,"context_line":"        if workload is None and slo:"},{"line_number":1856,"context_line":"            workload \u003d \u0027NONE\u0027"},{"line_number":1857,"context_line":""},{"line_number":1858,"context_line":"        kwargs[\u0027Workload\u0027] \u003d workload"},{"line_number":1859,"context_line":"        fastPolicy \u003d self._process_tag(element, \u0027FastPolicy\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_89e20000","line":1856,"updated":"2016-04-22 21:06:30.000000000","message":"What happens for the case where we have an empty element:\n\u003cSLO\u003e\u003c/SLO\u003e or \u003cWorkload\u003e\u003c/Workload\u003e\n\nCan you account for a value of \u0027\u0027 getting mapped to None as well?","commit_id":"d81e55c1d8377ae6bb6de6c3ec24661da60d1415"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"8e601e9742b6b4fbaedac411df3dc95bc7903db8","unresolved":false,"context_lines":[{"line_number":1853,"context_line":"        kwargs[\u0027SLO\u0027] \u003d slo"},{"line_number":1854,"context_line":"        workload \u003d self._process_tag(element, \u0027Workload\u0027)"},{"line_number":1855,"context_line":"        if workload is None and slo:"},{"line_number":1856,"context_line":"            workload \u003d \u0027NONE\u0027"},{"line_number":1857,"context_line":""},{"line_number":1858,"context_line":"        kwargs[\u0027Workload\u0027] \u003d workload"},{"line_number":1859,"context_line":"        fastPolicy \u003d self._process_tag(element, \u0027FastPolicy\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a122d0e_73a01ca0","line":1856,"in_reply_to":"1a122d0e_89e20000","updated":"2016-04-24 16:04:10.000000000","message":"I will write a unit test to confirm behaviour.  Thanks","commit_id":"d81e55c1d8377ae6bb6de6c3ec24661da60d1415"}]}
