)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"2bd965cc9700a2122a4bc84b74527167f706c814","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix revert snapshot issue"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"While there is a related fcmap stays in 100\u0026 copying clone state,"},{"line_number":10,"context_line":"and this volume act as target volume in fcmap relationship,"},{"line_number":11,"context_line":"revert snapshot will fail. This fix will stop 100 copying clone"},{"line_number":12,"context_line":"fcmap, then let revert snapshot go."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"df33271e_8e1cfac1","line":9,"range":{"start_line":9,"start_character":40,"end_line":9,"end_character":44},"updated":"2020-03-30 11:18:15.000000000","message":"you mean 100%?","commit_id":"4ed2dc527cf4969521292956bf1ba640ab928e05"},{"author":{"_account_id":30428,"name":"Xuchu Jiang","email":"jiangxuchu@gmail.com","username":"Xuchu"},"change_message_id":"6cf009eaa52784cb1d5c540fbffa62bd94ccaddf","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix revert snapshot issue"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"While there is a related fcmap stays in 100\u0026 copying clone state,"},{"line_number":10,"context_line":"and this volume act as target volume in fcmap relationship,"},{"line_number":11,"context_line":"revert snapshot will fail. This fix will stop 100 copying clone"},{"line_number":12,"context_line":"fcmap, then let revert snapshot go."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"df33271e_ed8bf964","line":9,"range":{"start_line":9,"start_character":40,"end_line":9,"end_character":44},"in_reply_to":"df33271e_8e1cfac1","updated":"2020-03-31 02:36:30.000000000","message":"yes, I will fix this typo.","commit_id":"4ed2dc527cf4969521292956bf1ba640ab928e05"}],"cinder/tests/unit/volume/drivers/ibm/test_storwize_svc.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"5fcf702d706693a855f66df61300489406e5989d","unresolved":false,"context_lines":[{"line_number":8070,"context_line":"            \u0027status\u0027: \u0027copying\u0027,"},{"line_number":8071,"context_line":"            \u0027target_vdisk_name\u0027: \u0027testvol\u0027}"},{"line_number":8072,"context_line":""},{"line_number":8073,"context_line":"        # self.driver.revert_to_snapshot(self.ctxt, vol1, snap1)"},{"line_number":8074,"context_line":"        self.assertRaises(exception.VolumeBackendAPIException,"},{"line_number":8075,"context_line":"                          self.driver.revert_to_snapshot,"},{"line_number":8076,"context_line":"                          self.ctxt,"}],"source_content_type":"text/x-python","patch_set":4,"id":"df33271e_c8571126","line":8073,"updated":"2020-03-30 14:54:14.000000000","message":"Please remove commented out code.","commit_id":"4ed2dc527cf4969521292956bf1ba640ab928e05"},{"author":{"_account_id":30428,"name":"Xuchu Jiang","email":"jiangxuchu@gmail.com","username":"Xuchu"},"change_message_id":"6cf009eaa52784cb1d5c540fbffa62bd94ccaddf","unresolved":false,"context_lines":[{"line_number":8070,"context_line":"            \u0027status\u0027: \u0027copying\u0027,"},{"line_number":8071,"context_line":"            \u0027target_vdisk_name\u0027: \u0027testvol\u0027}"},{"line_number":8072,"context_line":""},{"line_number":8073,"context_line":"        # self.driver.revert_to_snapshot(self.ctxt, vol1, snap1)"},{"line_number":8074,"context_line":"        self.assertRaises(exception.VolumeBackendAPIException,"},{"line_number":8075,"context_line":"                          self.driver.revert_to_snapshot,"},{"line_number":8076,"context_line":"                          self.ctxt,"}],"source_content_type":"text/x-python","patch_set":4,"id":"df33271e_0d19fd20","line":8073,"in_reply_to":"df33271e_c8571126","updated":"2020-03-31 02:36:30.000000000","message":"ok, I\u0027l remove it","commit_id":"4ed2dc527cf4969521292956bf1ba640ab928e05"}],"cinder/volume/drivers/ibm/storwize_svc/storwize_svc_common.py":[{"author":{"_account_id":14806,"name":"Chhavi Agarwal","email":"chhagarw@in.ibm.com","username":"chhagarw"},"change_message_id":"217443e97e0b60b79d11a54901762ea06028dabd","unresolved":false,"context_lines":[{"line_number":2526,"context_line":"            copy_rate \u003d attrs[\u0027copy_rate\u0027]"},{"line_number":2527,"context_line":"            progress \u003d attrs[\u0027progress\u0027]"},{"line_number":2528,"context_line":"            status \u003d attrs[\u0027status\u0027]"},{"line_number":2529,"context_line":"            if status in [\u0027copying\u0027, \u0027prepared\u0027]:"},{"line_number":2530,"context_line":"                if copy_rate !\u003d \u00270\u0027 and progress !\u003d \u0027100\u0027:"},{"line_number":2531,"context_line":"                    LOG.debug(\u0027Stop in progress clone operation\u0027,"},{"line_number":2532,"context_line":"                              {\u0027map_id\u0027: map_id})"}],"source_content_type":"text/x-python","patch_set":2,"id":"1fa4df85_26a31852","line":2529,"updated":"2020-02-23 09:58:45.000000000","message":"Include the check if the flashcopy attrs has the vdisk_name as target, because if the flashcopy has the vdisk as source they can still proceed.","commit_id":"4fd55095e09a91d8c315cfefbffc61617a1a5880"},{"author":{"_account_id":14806,"name":"Chhavi Agarwal","email":"chhagarw@in.ibm.com","username":"chhagarw"},"change_message_id":"217443e97e0b60b79d11a54901762ea06028dabd","unresolved":false,"context_lines":[{"line_number":2527,"context_line":"            progress \u003d attrs[\u0027progress\u0027]"},{"line_number":2528,"context_line":"            status \u003d attrs[\u0027status\u0027]"},{"line_number":2529,"context_line":"            if status in [\u0027copying\u0027, \u0027prepared\u0027]:"},{"line_number":2530,"context_line":"                if copy_rate !\u003d \u00270\u0027 and progress !\u003d \u0027100\u0027:"},{"line_number":2531,"context_line":"                    LOG.debug(\u0027Stop in progress clone operation\u0027,"},{"line_number":2532,"context_line":"                              {\u0027map_id\u0027: map_id})"},{"line_number":2533,"context_line":"                    self.ssh.stopfcmap(map_id)"}],"source_content_type":"text/x-python","patch_set":2,"id":"1fa4df85_069e1c07","line":2530,"updated":"2020-02-23 09:58:45.000000000","message":"Restore should be restricted if the flashcopy is in progress, for the volume serving as target.","commit_id":"4fd55095e09a91d8c315cfefbffc61617a1a5880"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"5fcf702d706693a855f66df61300489406e5989d","unresolved":false,"context_lines":[{"line_number":2536,"context_line":"                    raise exception.VolumeDriverException(message\u003dmsg)"},{"line_number":2537,"context_line":"                elif copy_rate !\u003d \u00270\u0027 and progress \u003d\u003d \u0027100\u0027:"},{"line_number":2538,"context_line":"                    LOG.debug(\u0027Split completed clone fcmap\u0027,"},{"line_number":2539,"context_line":"                              {\u0027map_id\u0027: map_id})"},{"line_number":2540,"context_line":"                    self.ssh.stopfcmap(map_id, split\u003dTrue)"},{"line_number":2541,"context_line":""},{"line_number":2542,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"df33271e_a829ed9b","line":2539,"range":{"start_line":2539,"start_character":30,"end_line":2539,"end_character":48},"updated":"2020-03-30 14:54:14.000000000","message":"This isn\u0027t being formatted into the string anywhere. Missing %(map_id)s.","commit_id":"4ed2dc527cf4969521292956bf1ba640ab928e05"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"5fcf702d706693a855f66df61300489406e5989d","unresolved":false,"context_lines":[{"line_number":5508,"context_line":"        try:"},{"line_number":5509,"context_line":"            self._helpers.pretreatment_before_revert(volume.name)"},{"line_number":5510,"context_line":"        except Exception as err:"},{"line_number":5511,"context_line":"            msg \u003d (_(\"Pretreatment before revert volume %(vol)s to snapshot\""},{"line_number":5512,"context_line":"                     \"%(snap)s failed due to: %(err)s.\")"},{"line_number":5513,"context_line":"                   % {\"vol\": volume.name, \"snap\": snapshot.name, \"err\": err})"},{"line_number":5514,"context_line":"            LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"df33271e_c8055116","line":5511,"range":{"start_line":5511,"start_character":75,"end_line":5511,"end_character":76},"updated":"2020-03-30 14:54:14.000000000","message":"Need trailing space in the string so the next line doesn\u0027t run together with snapshot.","commit_id":"4ed2dc527cf4969521292956bf1ba640ab928e05"},{"author":{"_account_id":30428,"name":"Xuchu Jiang","email":"jiangxuchu@gmail.com","username":"Xuchu"},"change_message_id":"6cf009eaa52784cb1d5c540fbffa62bd94ccaddf","unresolved":false,"context_lines":[{"line_number":5508,"context_line":"        try:"},{"line_number":5509,"context_line":"            self._helpers.pretreatment_before_revert(volume.name)"},{"line_number":5510,"context_line":"        except Exception as err:"},{"line_number":5511,"context_line":"            msg \u003d (_(\"Pretreatment before revert volume %(vol)s to snapshot\""},{"line_number":5512,"context_line":"                     \"%(snap)s failed due to: %(err)s.\")"},{"line_number":5513,"context_line":"                   % {\"vol\": volume.name, \"snap\": snapshot.name, \"err\": err})"},{"line_number":5514,"context_line":"            LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"df33271e_6d2a492c","line":5511,"range":{"start_line":5511,"start_character":75,"end_line":5511,"end_character":76},"in_reply_to":"df33271e_c8055116","updated":"2020-03-31 02:36:30.000000000","message":"Thanks, Sean, I will fix it.","commit_id":"4ed2dc527cf4969521292956bf1ba640ab928e05"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"b0a106f07cad0863b65721b570afaf944fbed030","unresolved":false,"context_lines":[{"line_number":616,"context_line":"    def stopfcmap(self, fc_map_id, force\u003dFalse, split\u003dFalse):"},{"line_number":617,"context_line":"        ssh_cmd \u003d [\u0027svctask\u0027, \u0027stopfcmap\u0027]"},{"line_number":618,"context_line":"        if force:"},{"line_number":619,"context_line":"            ssh_cmd +\u003d [\u0027-force\u0027]"},{"line_number":620,"context_line":"        if split:"},{"line_number":621,"context_line":"            ssh_cmd +\u003d [\u0027-split\u0027]"},{"line_number":622,"context_line":"        ssh_cmd +\u003d [fc_map_id]"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f4c43b2_e23710e3","line":619,"range":{"start_line":619,"start_character":19,"end_line":619,"end_character":22},"updated":"2020-04-13 15:46:21.000000000","message":"nit: we can use \u0027append\u0027 method here and below","commit_id":"9b4321f8462b32206c8d684442606b57a6af20da"},{"author":{"_account_id":30428,"name":"Xuchu Jiang","email":"jiangxuchu@gmail.com","username":"Xuchu"},"change_message_id":"f8fff2be1f8b0316657e475829d1a696e09ee64d","unresolved":false,"context_lines":[{"line_number":616,"context_line":"    def stopfcmap(self, fc_map_id, force\u003dFalse, split\u003dFalse):"},{"line_number":617,"context_line":"        ssh_cmd \u003d [\u0027svctask\u0027, \u0027stopfcmap\u0027]"},{"line_number":618,"context_line":"        if force:"},{"line_number":619,"context_line":"            ssh_cmd +\u003d [\u0027-force\u0027]"},{"line_number":620,"context_line":"        if split:"},{"line_number":621,"context_line":"            ssh_cmd +\u003d [\u0027-split\u0027]"},{"line_number":622,"context_line":"        ssh_cmd +\u003d [fc_map_id]"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f4c43b2_ee40960a","line":619,"range":{"start_line":619,"start_character":19,"end_line":619,"end_character":22},"in_reply_to":"3f4c43b2_2bcb9053","updated":"2020-04-14 00:04:14.000000000","message":"I will change them in a dedicated patch, since there are many +\u003d operators in some other places","commit_id":"9b4321f8462b32206c8d684442606b57a6af20da"},{"author":{"_account_id":30428,"name":"Xuchu Jiang","email":"jiangxuchu@gmail.com","username":"Xuchu"},"change_message_id":"d04e03300e865d7c1a22c10ec8ab34f88bdb0cac","unresolved":false,"context_lines":[{"line_number":616,"context_line":"    def stopfcmap(self, fc_map_id, force\u003dFalse, split\u003dFalse):"},{"line_number":617,"context_line":"        ssh_cmd \u003d [\u0027svctask\u0027, \u0027stopfcmap\u0027]"},{"line_number":618,"context_line":"        if force:"},{"line_number":619,"context_line":"            ssh_cmd +\u003d [\u0027-force\u0027]"},{"line_number":620,"context_line":"        if split:"},{"line_number":621,"context_line":"            ssh_cmd +\u003d [\u0027-split\u0027]"},{"line_number":622,"context_line":"        ssh_cmd +\u003d [fc_map_id]"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f4c43b2_2bcb9053","line":619,"range":{"start_line":619,"start_character":19,"end_line":619,"end_character":22},"in_reply_to":"3f4c43b2_e23710e3","updated":"2020-04-13 23:00:42.000000000","message":"Thanks for the comments.","commit_id":"9b4321f8462b32206c8d684442606b57a6af20da"}]}
