)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"6de3fd619d275930483fd636e2b6bfd4554692b1","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     katarimanojkumar \u003ckatkumar@in.ibm.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2020-08-04 15:31:10 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"[Storwize]:delete_group_snapshot doesn\u0027t handle flash copy"},{"line_number":8,"context_line":"consistency group cleanup properly."},{"line_number":9,"context_line":"In case of multiple snapshots in the group,existing code exits"},{"line_number":10,"context_line":"if any one snapshot deletion fails, but it should update error"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"9f560f44_23c4def4","line":7,"updated":"2020-08-04 15:46:05.000000000","message":"Blank line needed after the summary line in the commit message.\n\nhttps://wiki.openstack.org/wiki/GitCommitMessages#Summary_of_Git_commit_message_structure","commit_id":"a965d6b80879b510e97aa16c34d8edad347dad3b"}],"cinder/tests/unit/volume/drivers/ibm/test_storwize_svc.py":[{"author":{"_account_id":18058,"name":"Lucio Seki","email":"lseki@redhat.com","username":"lseki"},"change_message_id":"f9727cc79de50eb789bc798e766d59c037c3663d","unresolved":false,"context_lines":[{"line_number":6302,"context_line":"    @mock.patch.object(storwize_svc_common.StorwizeHelpers,"},{"line_number":6303,"context_line":"                       \u0027delete_fc_consistgrp\u0027)"},{"line_number":6304,"context_line":"    @mock.patch(\u0027cinder.volume.volume_utils.is_group_a_cg_snapshot_type\u0027)"},{"line_number":6305,"context_line":"    def test_storwize_delete_consistgroup_snapshot(self,"},{"line_number":6306,"context_line":"                                                   is_grp_a_cg_snapshot_type,"},{"line_number":6307,"context_line":"                                                   delete_fc_consistgrp,"},{"line_number":6308,"context_line":"                                                   delete_vdisk):"}],"source_content_type":"text/x-python","patch_set":4,"id":"9f560f44_e7303359","line":6305,"updated":"2020-08-21 17:48:33.000000000","message":"You are not testing the exception code path you added [0].\n\nYou could add a negative test case, making `delete_vdisk` raise `VolumeBackendAPIException` and assert that the model is being properly updated with `ERROR_DELETING` state.\n\n[0] https://3e0ed2eda1a146e9ea31-f56bb1b15fc8b6593fa418dc9e44f657.ssl.cf1.rackcdn.com/744652/4/check/cinder-code-coverage/1a2b364/cover/cinder_volume_drivers_ibm_storwize_svc_storwize_svc_common_py.html#t1869","commit_id":"7b631323155aae7131343396b615f51fbbe4cb4e"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"e8c9ac3959390bd0872ea5e07f1d155e4f7fa43b","unresolved":false,"context_lines":[{"line_number":6357,"context_line":""},{"line_number":6358,"context_line":"        (model_update,"},{"line_number":6359,"context_line":"         snap_model_update) \u003d self.driver._helpers.delete_consistgrp_snapshots("},{"line_number":6360,"context_line":"                 cg_name, snapshots)"},{"line_number":6361,"context_line":"        self.assertEqual(fields.GroupSnapshotStatus.ERROR_DELETING,"},{"line_number":6362,"context_line":"                         model_update[\u0027status\u0027])"},{"line_number":6363,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9f560f44_f5b5467f","line":6360,"updated":"2020-08-25 22:10:24.000000000","message":"pep8: E126 continuation line over-indented for hanging indent","commit_id":"5739c70f22051127775f6c9165b860aa005e9a9c"},{"author":{"_account_id":18058,"name":"Lucio Seki","email":"lseki@redhat.com","username":"lseki"},"change_message_id":"263b06ed49ede34354a8fc705578dfeacef3235a","unresolved":false,"context_lines":[{"line_number":6357,"context_line":""},{"line_number":6358,"context_line":"        (model_update,"},{"line_number":6359,"context_line":"         snap_model_update) \u003d self.driver._helpers.delete_consistgrp_snapshots("},{"line_number":6360,"context_line":"            cg_name, snapshots)"},{"line_number":6361,"context_line":"        self.assertEqual(fields.GroupSnapshotStatus.ERROR_DELETING,"},{"line_number":6362,"context_line":"                         model_update[\u0027status\u0027])"},{"line_number":6363,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"9f560f44_ab84050c","line":6360,"updated":"2020-08-26 12:40:42.000000000","message":"missing delete_fc_consistgrp.assert_has_calls","commit_id":"61776acee07a78d1bd5779c6501c94582f4b3c6d"},{"author":{"_account_id":18058,"name":"Lucio Seki","email":"lseki@redhat.com","username":"lseki"},"change_message_id":"f3c663828a38fe84e2494b0117856f7ddb76c833","unresolved":false,"context_lines":[{"line_number":6357,"context_line":""},{"line_number":6358,"context_line":"        (model_update,"},{"line_number":6359,"context_line":"         snap_model_update) \u003d self.driver._helpers.delete_consistgrp_snapshots("},{"line_number":6360,"context_line":"            cg_name, snapshots)"},{"line_number":6361,"context_line":"        self.assertEqual(fields.GroupSnapshotStatus.ERROR_DELETING,"},{"line_number":6362,"context_line":"                         model_update[\u0027status\u0027])"},{"line_number":6363,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"9f560f44_1919de21","line":6360,"in_reply_to":"9f560f44_a6438a6b","updated":"2020-08-28 13:14:14.000000000","message":"I see. I think it\u0027s fine, as delete_fc_consistgrp is the first thing that the method calls, and there\u0027re no conditions to call it.","commit_id":"61776acee07a78d1bd5779c6501c94582f4b3c6d"},{"author":{"_account_id":32036,"name":"katari manoj kumar","email":"katkumar@in.ibm.com","username":"katarimanojkumar"},"change_message_id":"252504a4e41c82ba44872367c8f36a35153a90e7","unresolved":false,"context_lines":[{"line_number":6357,"context_line":""},{"line_number":6358,"context_line":"        (model_update,"},{"line_number":6359,"context_line":"         snap_model_update) \u003d self.driver._helpers.delete_consistgrp_snapshots("},{"line_number":6360,"context_line":"            cg_name, snapshots)"},{"line_number":6361,"context_line":"        self.assertEqual(fields.GroupSnapshotStatus.ERROR_DELETING,"},{"line_number":6362,"context_line":"                         model_update[\u0027status\u0027])"},{"line_number":6363,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"9f560f44_a6438a6b","line":6360,"in_reply_to":"9f560f44_ab84050c","updated":"2020-08-27 09:37:47.000000000","message":"There is one more test case above this to check delete_fc_consistgrp, this testcase is explicitly for testing delete_vdisk exception case model_update status update. No change needed here.","commit_id":"61776acee07a78d1bd5779c6501c94582f4b3c6d"},{"author":{"_account_id":18058,"name":"Lucio Seki","email":"lseki@redhat.com","username":"lseki"},"change_message_id":"f3c663828a38fe84e2494b0117856f7ddb76c833","unresolved":false,"context_lines":[{"line_number":6337,"context_line":"    @mock.patch.object(storwize_svc_common.StorwizeHelpers,"},{"line_number":6338,"context_line":"                       \u0027delete_fc_consistgrp\u0027)"},{"line_number":6339,"context_line":"    @mock.patch(\u0027cinder.volume.volume_utils.is_group_a_cg_snapshot_type\u0027)"},{"line_number":6340,"context_line":"    def test_storwize_delete_consistgroup_snapshot_1(self,"},{"line_number":6341,"context_line":"                                                     is_grp_a_cg_snapshot_type,"},{"line_number":6342,"context_line":"                                                     delete_fc_consistgrp,"},{"line_number":6343,"context_line":"                                                     delete_vdisk):"}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_39082290","line":6340,"range":{"start_line":6340,"start_character":50,"end_line":6340,"end_character":52},"updated":"2020-08-28 13:14:14.000000000","message":"nit: you may want to add a more meaningful name to the test, like \u0027_negative\u0027 or \u0027_error_deleting\u0027.","commit_id":"587147b6d65482fa03de7b55997693f9e389238d"}],"cinder/volume/drivers/ibm/storwize_svc/storwize_svc_common.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"d3afabf2a39135120b29e42ed1dac7c204da93dd","unresolved":false,"context_lines":[{"line_number":1854,"context_line":"            self.delete_fc_consistgrp(fc_consistgrp)"},{"line_number":1855,"context_line":"        except exception.VolumeBackendAPIException as err:"},{"line_number":1856,"context_line":"            if \u0027CMMVC5753E\u0027 in err.msg:"},{"line_number":1857,"context_line":"                LOG.debug(\u0027Failed to delete as flash copy consistency group %s does not exist,ignoring err: %s\u0027, fc_consistgrp, err)"},{"line_number":1858,"context_line":""},{"line_number":1859,"context_line":"        for snapshot in snapshots:"},{"line_number":1860,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_96140b46","line":1857,"updated":"2020-08-04 11:20:10.000000000","message":"pep8: E501 line too long (132 \u003e 79 characters)","commit_id":"54666d19ece64d39522ea37920f680ba41a7c74a"},{"author":{"_account_id":32036,"name":"katari manoj kumar","email":"katkumar@in.ibm.com","username":"katarimanojkumar"},"change_message_id":"8689ab65c5fcbb884f80ec8b6a86487b859570d3","unresolved":false,"context_lines":[{"line_number":1854,"context_line":"            self.delete_fc_consistgrp(fc_consistgrp)"},{"line_number":1855,"context_line":"        except exception.VolumeBackendAPIException as err:"},{"line_number":1856,"context_line":"            if \u0027CMMVC5753E\u0027 in err.msg:"},{"line_number":1857,"context_line":"                LOG.debug(\u0027Failed to delete as flash copy consistency group %s does not exist,ignoring err: %s\u0027, fc_consistgrp, err)"},{"line_number":1858,"context_line":""},{"line_number":1859,"context_line":"        for snapshot in snapshots:"},{"line_number":1860,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":2,"id":"9f560f44_c3d1a2fd","line":1857,"in_reply_to":"9f560f44_96140b46","updated":"2020-08-18 04:04:57.000000000","message":"Done","commit_id":"54666d19ece64d39522ea37920f680ba41a7c74a"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"6de3fd619d275930483fd636e2b6bfd4554692b1","unresolved":false,"context_lines":[{"line_number":1854,"context_line":"            self.delete_fc_consistgrp(fc_consistgrp)"},{"line_number":1855,"context_line":"        except exception.VolumeBackendAPIException as err:"},{"line_number":1856,"context_line":"            if \u0027CMMVC5753E\u0027 in err.msg:"},{"line_number":1857,"context_line":"                LOG.warning(\u0027Failed to delete as flash copy consistency\u0027"},{"line_number":1858,"context_line":"                            \u0027group %s does not exist,ignoring err: %s\u0027,"},{"line_number":1859,"context_line":"                            fc_consistgrp, err)"},{"line_number":1860,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"9f560f44_a3af4e28","line":1857,"range":{"start_line":1857,"start_character":71,"end_line":1857,"end_character":72},"updated":"2020-08-04 15:46:05.000000000","message":"Space missing at the end.","commit_id":"a965d6b80879b510e97aa16c34d8edad347dad3b"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"b9806123b089022ee2936bdfc37c0ac5e81b3e20","unresolved":false,"context_lines":[{"line_number":1853,"context_line":"        try:"},{"line_number":1854,"context_line":"            self.delete_fc_consistgrp(fc_consistgrp)"},{"line_number":1855,"context_line":"        except exception.VolumeBackendAPIException as err:"},{"line_number":1856,"context_line":"            if \u0027CMMVC5753E\u0027 in err.msg:"},{"line_number":1857,"context_line":"                LOG.warning(\u0027Failed to delete as flash copy consistency \u0027"},{"line_number":1858,"context_line":"                            \u0027group %s does not exist,ignoring err: %s\u0027,"},{"line_number":1859,"context_line":"                            fc_consistgrp, err)"}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_8dddfa42","line":1856,"updated":"2020-09-09 18:06:27.000000000","message":"might want to make that \u0027CMMV....\u0027 string a constant?","commit_id":"587147b6d65482fa03de7b55997693f9e389238d"},{"author":{"_account_id":32036,"name":"katari manoj kumar","email":"katkumar@in.ibm.com","username":"katarimanojkumar"},"change_message_id":"62ae6898a4b4a785db44fe7d2f4afc4dc6cb6b87","unresolved":false,"context_lines":[{"line_number":1853,"context_line":"        try:"},{"line_number":1854,"context_line":"            self.delete_fc_consistgrp(fc_consistgrp)"},{"line_number":1855,"context_line":"        except exception.VolumeBackendAPIException as err:"},{"line_number":1856,"context_line":"            if \u0027CMMVC5753E\u0027 in err.msg:"},{"line_number":1857,"context_line":"                LOG.warning(\u0027Failed to delete as flash copy consistency \u0027"},{"line_number":1858,"context_line":"                            \u0027group %s does not exist,ignoring err: %s\u0027,"},{"line_number":1859,"context_line":"                            fc_consistgrp, err)"}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_df2598c0","line":1856,"in_reply_to":"9f560f44_8dddfa42","updated":"2020-09-13 10:00:44.000000000","message":"Fixed","commit_id":"587147b6d65482fa03de7b55997693f9e389238d"},{"author":{"_account_id":18058,"name":"Lucio Seki","email":"lseki@redhat.com","username":"lseki"},"change_message_id":"45995331ad5d8cb9aea6dfac80c2a9e1e550ba11","unresolved":false,"context_lines":[{"line_number":1853,"context_line":"        try:"},{"line_number":1854,"context_line":"            self.delete_fc_consistgrp(fc_consistgrp)"},{"line_number":1855,"context_line":"        except exception.VolumeBackendAPIException as err:"},{"line_number":1856,"context_line":"            if \u0027CMMVC5753E\u0027 in err.msg:"},{"line_number":1857,"context_line":"                LOG.warning(\u0027Failed to delete as flash copy consistency \u0027"},{"line_number":1858,"context_line":"                            \u0027group %s does not exist,ignoring err: %s\u0027,"},{"line_number":1859,"context_line":"                            fc_consistgrp, err)"}],"source_content_type":"text/x-python","patch_set":8,"id":"9f560f44_31825753","line":1856,"in_reply_to":"9f560f44_df2598c0","updated":"2020-09-23 14:04:43.000000000","message":"Whoever looks at this code needs to search in the internet what \u0027CMMV5753E\u0027 means. So it\u0027s a magic number [0].\n\nWe still can guess what this code means by reading the log message in L1858, but you may assign a more significant name for this constant (e.g. ERROR_INEXISTENT_OR_UNSUITABLE).\n\nThis code already has many other magic numbers (\u0027CMMVC5959E\u0027, \u0027CMMVC6372W\u0027, etc.), so you may want to create a separate patch to replace all of them by constants with significant names.\n\n[0] https://en.wikipedia.org/wiki/Magic_number_(programming)","commit_id":"587147b6d65482fa03de7b55997693f9e389238d"}],"releasenotes/notes/bug-1890241-strowize-delete_group_snapshot_fix-2e491e74e1f73ba7.yaml":[{"author":{"_account_id":18058,"name":"Lucio Seki","email":"lseki@redhat.com","username":"lseki"},"change_message_id":"263b06ed49ede34354a8fc705578dfeacef3235a","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Fix bug `#1890241 \u003chttps://bugs.launchpad.net/cinder/+bug/1890241\u003e`_,"},{"line_number":5,"context_line":"    During delete_group_snapshot on IBM storwize, in case of multiple"},{"line_number":6,"context_line":"    snapshots in the group,delete flow exits if any one snapshot deletion"},{"line_number":7,"context_line":"    fails but it should update error state and continue with deleting"}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9f560f44_af2c1299","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":73},"updated":"2020-08-26 12:40:42.000000000","message":"`Bug #1890241 \u003chttps://bugs.launchpad.net/cinder/+bug/1890241\u003e`_:","commit_id":"61776acee07a78d1bd5779c6501c94582f4b3c6d"},{"author":{"_account_id":18058,"name":"Lucio Seki","email":"lseki@redhat.com","username":"lseki"},"change_message_id":"263b06ed49ede34354a8fc705578dfeacef3235a","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Fix bug `#1890241 \u003chttps://bugs.launchpad.net/cinder/+bug/1890241\u003e`_,"},{"line_number":5,"context_line":"    During delete_group_snapshot on IBM storwize, in case of multiple"},{"line_number":6,"context_line":"    snapshots in the group,delete flow exits if any one snapshot deletion"},{"line_number":7,"context_line":"    fails but it should update error state and continue with deleting"},{"line_number":8,"context_line":"    other snapshots."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9f560f44_4f3d76c2","line":6,"range":{"start_line":6,"start_character":26,"end_line":6,"end_character":27},"updated":"2020-08-26 12:40:42.000000000","message":"missing space after comma","commit_id":"61776acee07a78d1bd5779c6501c94582f4b3c6d"},{"author":{"_account_id":18058,"name":"Lucio Seki","email":"lseki@redhat.com","username":"lseki"},"change_message_id":"263b06ed49ede34354a8fc705578dfeacef3235a","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    Fix bug `#1890241 \u003chttps://bugs.launchpad.net/cinder/+bug/1890241\u003e`_,"},{"line_number":5,"context_line":"    During delete_group_snapshot on IBM storwize, in case of multiple"},{"line_number":6,"context_line":"    snapshots in the group,delete flow exits if any one snapshot deletion"},{"line_number":7,"context_line":"    fails but it should update error state and continue with deleting"},{"line_number":8,"context_line":"    other snapshots."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"9f560f44_ef572a00","line":7,"range":{"start_line":7,"start_character":9,"end_line":7,"end_character":10},"updated":"2020-08-26 12:40:42.000000000","message":"missing comma before \"but\"","commit_id":"61776acee07a78d1bd5779c6501c94582f4b3c6d"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"42b59bc1d885591d2a0460da6b3f16b4ecf85c56","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    `Bug #1890241 \u003chttps://bugs.launchpad.net/cinder/+bug/1890241\u003e`_:"},{"line_number":5,"context_line":"    During delete_group_snapshot on IBM storwize, in case of multiple"},{"line_number":6,"context_line":"    snapshots in the group, delete flow exits if any one snapshot deletion"},{"line_number":7,"context_line":"    fails, but it should update error state and continue with deleting"},{"line_number":8,"context_line":"    other snapshots."}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f560f44_8f821751","line":6,"range":{"start_line":6,"start_character":28,"end_line":6,"end_character":45},"updated":"2020-09-23 17:01:00.000000000","message":"the delete flow would exit","commit_id":"933a833b8d0138dae50a1b19095dd77a2a5cd55b"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"42b59bc1d885591d2a0460da6b3f16b4ecf85c56","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    `Bug #1890241 \u003chttps://bugs.launchpad.net/cinder/+bug/1890241\u003e`_:"},{"line_number":5,"context_line":"    During delete_group_snapshot on IBM storwize, in case of multiple"},{"line_number":6,"context_line":"    snapshots in the group, delete flow exits if any one snapshot deletion"},{"line_number":7,"context_line":"    fails, but it should update error state and continue with deleting"},{"line_number":8,"context_line":"    other snapshots."}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f560f44_6f87c362","line":7,"range":{"start_line":7,"start_character":4,"end_line":7,"end_character":31},"updated":"2020-09-23 17:01:00.000000000","message":"failed. The driver will now update","commit_id":"933a833b8d0138dae50a1b19095dd77a2a5cd55b"},{"author":{"_account_id":32036,"name":"katari manoj kumar","email":"katkumar@in.ibm.com","username":"katarimanojkumar"},"change_message_id":"2b09ecc9bc0da7c57033db941818d06d318c5a2b","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    `Bug #1890241 \u003chttps://bugs.launchpad.net/cinder/+bug/1890241\u003e`_:"},{"line_number":5,"context_line":"    During delete_group_snapshot on IBM storwize, in case of multiple"},{"line_number":6,"context_line":"    snapshots in the group, delete flow exits if any one snapshot deletion"},{"line_number":7,"context_line":"    fails, but it should update error state and continue with deleting"},{"line_number":8,"context_line":"    other snapshots."}],"source_content_type":"text/x-yaml","patch_set":9,"id":"9f560f44_cf088f81","line":7,"range":{"start_line":7,"start_character":4,"end_line":7,"end_character":31},"in_reply_to":"9f560f44_6f87c362","updated":"2020-09-24 07:36:41.000000000","message":"Thanks Sean, i will note this and update.","commit_id":"933a833b8d0138dae50a1b19095dd77a2a5cd55b"}]}
