)]}'
{"cinder/volume/drivers/dell_emc/vmax/common.py":[{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"ddac080a331e3178970bcc7d5598497cbf619ec1","unresolved":false,"context_lines":[{"line_number":2049,"context_line":"        it is managed by Cinder"},{"line_number":2050,"context_line":"        :param snapshot: the snapshot object"},{"line_number":2051,"context_line":"        :param existing_ref: the snapshot name on the backend VMAX"},{"line_number":2052,"context_line":"        :raises VolumeBackendAPIException"},{"line_number":2053,"context_line":"        :return: model update"},{"line_number":2054,"context_line":"        \"\"\""},{"line_number":2055,"context_line":"        volume \u003d snapshot.volume"}],"source_content_type":"text/x-python","patch_set":6,"id":"ff82abbf_7a644f4a","line":2052,"range":{"start_line":2052,"start_character":8,"end_line":2052,"end_character":15},"updated":"2017-11-30 16:13:09.000000000","message":"Missing colon here I think.","commit_id":"9b6fdc8029ca9dc9a497b223c37893c6ce600b22"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"23b439d0146b2b64182b0b784002a7393710fea5","unresolved":false,"context_lines":[{"line_number":2049,"context_line":"        it is managed by Cinder"},{"line_number":2050,"context_line":"        :param snapshot: the snapshot object"},{"line_number":2051,"context_line":"        :param existing_ref: the snapshot name on the backend VMAX"},{"line_number":2052,"context_line":"        :raises VolumeBackendAPIException"},{"line_number":2053,"context_line":"        :return: model update"},{"line_number":2054,"context_line":"        \"\"\""},{"line_number":2055,"context_line":"        volume \u003d snapshot.volume"}],"source_content_type":"text/x-python","patch_set":6,"id":"df87a7cf_a4c4ec41","line":2052,"range":{"start_line":2052,"start_character":8,"end_line":2052,"end_character":15},"in_reply_to":"ff82abbf_7a644f4a","updated":"2017-12-01 14:48:22.000000000","message":"will change","commit_id":"9b6fdc8029ca9dc9a497b223c37893c6ce600b22"},{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"ddac080a331e3178970bcc7d5598497cbf619ec1","unresolved":false,"context_lines":[{"line_number":2047,"context_line":""},{"line_number":2048,"context_line":"        Renames the Snapshot to prefix it with OS- to indicate"},{"line_number":2049,"context_line":"        it is managed by Cinder"},{"line_number":2050,"context_line":"        :param snapshot: the snapshot object"},{"line_number":2051,"context_line":"        :param existing_ref: the snapshot name on the backend VMAX"},{"line_number":2052,"context_line":"        :raises VolumeBackendAPIException"},{"line_number":2053,"context_line":"        :return: model update"},{"line_number":2054,"context_line":"        \"\"\""},{"line_number":2055,"context_line":"        volume \u003d snapshot.volume"},{"line_number":2056,"context_line":"        extra_specs \u003d self._initial_setup(volume)"}],"source_content_type":"text/x-python","patch_set":6,"id":"ff82abbf_fa6e1f2d","line":2053,"range":{"start_line":2050,"start_character":0,"end_line":2053,"end_character":29},"updated":"2017-11-30 16:13:09.000000000","message":"Should have a blank line before this.  Otherwise rendering in the API doc will be wrong.","commit_id":"9b6fdc8029ca9dc9a497b223c37893c6ce600b22"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"23b439d0146b2b64182b0b784002a7393710fea5","unresolved":false,"context_lines":[{"line_number":2047,"context_line":""},{"line_number":2048,"context_line":"        Renames the Snapshot to prefix it with OS- to indicate"},{"line_number":2049,"context_line":"        it is managed by Cinder"},{"line_number":2050,"context_line":"        :param snapshot: the snapshot object"},{"line_number":2051,"context_line":"        :param existing_ref: the snapshot name on the backend VMAX"},{"line_number":2052,"context_line":"        :raises VolumeBackendAPIException"},{"line_number":2053,"context_line":"        :return: model update"},{"line_number":2054,"context_line":"        \"\"\""},{"line_number":2055,"context_line":"        volume \u003d snapshot.volume"},{"line_number":2056,"context_line":"        extra_specs \u003d self._initial_setup(volume)"}],"source_content_type":"text/x-python","patch_set":6,"id":"df87a7cf_44eba0af","line":2053,"range":{"start_line":2050,"start_character":0,"end_line":2053,"end_character":29},"in_reply_to":"ff82abbf_fa6e1f2d","updated":"2017-12-01 14:48:22.000000000","message":"Sure, should be returns also","commit_id":"9b6fdc8029ca9dc9a497b223c37893c6ce600b22"},{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"ddac080a331e3178970bcc7d5598497cbf619ec1","unresolved":false,"context_lines":[{"line_number":2141,"context_line":""},{"line_number":2142,"context_line":"        Leaves the snapshot intact on the backend VMAX"},{"line_number":2143,"context_line":"        :param snapshot: the snapshot object"},{"line_number":2144,"context_line":"        :raises VolumeBackendAPIException"},{"line_number":2145,"context_line":"        \"\"\""},{"line_number":2146,"context_line":"        volume \u003d snapshot.volume"},{"line_number":2147,"context_line":"        extra_specs \u003d self._initial_setup(volume)"}],"source_content_type":"text/x-python","patch_set":6,"id":"ff82abbf_df1694f2","line":2144,"range":{"start_line":2144,"start_character":8,"end_line":2144,"end_character":15},"updated":"2017-11-30 16:13:09.000000000","message":"missing \u0027:\u0027 here","commit_id":"9b6fdc8029ca9dc9a497b223c37893c6ce600b22"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"23b439d0146b2b64182b0b784002a7393710fea5","unresolved":false,"context_lines":[{"line_number":2141,"context_line":""},{"line_number":2142,"context_line":"        Leaves the snapshot intact on the backend VMAX"},{"line_number":2143,"context_line":"        :param snapshot: the snapshot object"},{"line_number":2144,"context_line":"        :raises VolumeBackendAPIException"},{"line_number":2145,"context_line":"        \"\"\""},{"line_number":2146,"context_line":"        volume \u003d snapshot.volume"},{"line_number":2147,"context_line":"        extra_specs \u003d self._initial_setup(volume)"}],"source_content_type":"text/x-python","patch_set":6,"id":"df87a7cf_c4d6d0f2","line":2144,"range":{"start_line":2144,"start_character":8,"end_line":2144,"end_character":15},"in_reply_to":"ff82abbf_df1694f2","updated":"2017-12-01 14:48:22.000000000","message":"will change","commit_id":"9b6fdc8029ca9dc9a497b223c37893c6ce600b22"},{"author":{"_account_id":23414,"name":"Ciara Stacke","email":"ciara.stacke@emc.com","username":"cstacke"},"change_message_id":"c8b842f76d7e702428c3eb27fbb5f54b3e288436","unresolved":false,"context_lines":[{"line_number":2097,"context_line":"            raise exception.VolumeBackendAPIException("},{"line_number":2098,"context_line":"                data\u003dexception_message)"},{"line_number":2099,"context_line":""},{"line_number":2100,"context_line":"        snap_backend_name \u003d self.utils.modify_snapshot_prefix("},{"line_number":2101,"context_line":"            snap_name, manage\u003dTrue)"},{"line_number":2102,"context_line":""},{"line_number":2103,"context_line":"        try:"},{"line_number":2104,"context_line":"            self.rest.modify_volume_snap("}],"source_content_type":"text/x-python","patch_set":7,"id":"df87a7cf_0aac7133","line":2101,"range":{"start_line":2100,"start_character":8,"end_line":2101,"end_character":35},"updated":"2017-12-15 12:35:03.000000000","message":"Is there a reason we are just prefixing the current snapshot name with \u0027OS-\u0027, instead of following the naming convention we have for standard snapshots (\u0027OS-\u003ctruncated-UUID\u003e\u0027?) I think it would be good to keep naming conventions consistent if possible.","commit_id":"ee44b4e974cc2a732d5f27fa57775f1fff01b859"},{"author":{"_account_id":23601,"name":"michael","display_name":"michael-mcaleer","email":"Michael.Mcaleer@dell.com","username":"michael-mcaleer"},"change_message_id":"6e3406a045a215dc333e66110b223fab2c0146d8","unresolved":false,"context_lines":[{"line_number":2097,"context_line":"            raise exception.VolumeBackendAPIException("},{"line_number":2098,"context_line":"                data\u003dexception_message)"},{"line_number":2099,"context_line":""},{"line_number":2100,"context_line":"        snap_backend_name \u003d self.utils.modify_snapshot_prefix("},{"line_number":2101,"context_line":"            snap_name, manage\u003dTrue)"},{"line_number":2102,"context_line":""},{"line_number":2103,"context_line":"        try:"},{"line_number":2104,"context_line":"            self.rest.modify_volume_snap("}],"source_content_type":"text/x-python","patch_set":7,"id":"df87a7cf_30e1719c","line":2101,"range":{"start_line":2100,"start_character":8,"end_line":2101,"end_character":35},"in_reply_to":"df87a7cf_0aac7133","updated":"2017-12-18 14:58:06.000000000","message":"It is different here because we did not create the resource initially, if the user specified a name then we should use that same name and prefix with OS-. If we unmanage the same snapshot, it will revert to the name it had initially, instead of being just a truncated string with OS- removed. It is usability for the end user and their own names which should take preference here over our own generated IDs, as OpenStack was not the service that created the Snapshot.","commit_id":"ee44b4e974cc2a732d5f27fa57775f1fff01b859"}],"cinder/volume/drivers/dell_emc/vmax/fc.py":[{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"ddac080a331e3178970bcc7d5598497cbf619ec1","unresolved":false,"context_lines":[{"line_number":485,"context_line":"    def manage_existing_snapshot(self, snapshot, existing_ref):"},{"line_number":486,"context_line":"        \"\"\"Manage an existing VMAX Snapshot (import to Cinder)."},{"line_number":487,"context_line":""},{"line_number":488,"context_line":"        Renames the Snapshot to prefix it with OS- to indicate"},{"line_number":489,"context_line":"        it is managed by Cinder"},{"line_number":490,"context_line":"        :param snapshot: the snapshot object"},{"line_number":491,"context_line":"        :param existing_ref: the snapshot name on the backend VMAX"},{"line_number":492,"context_line":"        :return: model_update"},{"line_number":493,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"ff82abbf_3fb460f2","line":490,"range":{"start_line":488,"start_character":0,"end_line":490,"end_character":44},"updated":"2017-11-30 16:13:09.000000000","message":"missing blank line","commit_id":"9b6fdc8029ca9dc9a497b223c37893c6ce600b22"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"23b439d0146b2b64182b0b784002a7393710fea5","unresolved":false,"context_lines":[{"line_number":485,"context_line":"    def manage_existing_snapshot(self, snapshot, existing_ref):"},{"line_number":486,"context_line":"        \"\"\"Manage an existing VMAX Snapshot (import to Cinder)."},{"line_number":487,"context_line":""},{"line_number":488,"context_line":"        Renames the Snapshot to prefix it with OS- to indicate"},{"line_number":489,"context_line":"        it is managed by Cinder"},{"line_number":490,"context_line":"        :param snapshot: the snapshot object"},{"line_number":491,"context_line":"        :param existing_ref: the snapshot name on the backend VMAX"},{"line_number":492,"context_line":"        :return: model_update"},{"line_number":493,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"df87a7cf_c4efb0ae","line":490,"range":{"start_line":488,"start_character":0,"end_line":490,"end_character":44},"in_reply_to":"ff82abbf_3fb460f2","updated":"2017-12-01 14:48:22.000000000","message":"sure","commit_id":"9b6fdc8029ca9dc9a497b223c37893c6ce600b22"},{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"ddac080a331e3178970bcc7d5598497cbf619ec1","unresolved":false,"context_lines":[{"line_number":505,"context_line":"    def unmanage_snapshot(self, snapshot):"},{"line_number":506,"context_line":"        \"\"\"Export VMAX Snapshot from Cinder."},{"line_number":507,"context_line":""},{"line_number":508,"context_line":"        Leaves the snapshot intact on the backend VMAX"},{"line_number":509,"context_line":"        :param snapshot: the snapshot object"},{"line_number":510,"context_line":"        \"\"\""},{"line_number":511,"context_line":"        self.common.unmanage_snapshot(snapshot)"},{"line_number":512,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"ff82abbf_7f88a821","line":509,"range":{"start_line":508,"start_character":0,"end_line":509,"end_character":44},"updated":"2017-11-30 16:13:09.000000000","message":"Missing blank line.","commit_id":"9b6fdc8029ca9dc9a497b223c37893c6ce600b22"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"23b439d0146b2b64182b0b784002a7393710fea5","unresolved":false,"context_lines":[{"line_number":505,"context_line":"    def unmanage_snapshot(self, snapshot):"},{"line_number":506,"context_line":"        \"\"\"Export VMAX Snapshot from Cinder."},{"line_number":507,"context_line":""},{"line_number":508,"context_line":"        Leaves the snapshot intact on the backend VMAX"},{"line_number":509,"context_line":"        :param snapshot: the snapshot object"},{"line_number":510,"context_line":"        \"\"\""},{"line_number":511,"context_line":"        self.common.unmanage_snapshot(snapshot)"},{"line_number":512,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"df87a7cf_e4267417","line":509,"range":{"start_line":508,"start_character":0,"end_line":509,"end_character":44},"in_reply_to":"ff82abbf_7f88a821","updated":"2017-12-01 14:48:22.000000000","message":"Sure","commit_id":"9b6fdc8029ca9dc9a497b223c37893c6ce600b22"}],"cinder/volume/drivers/dell_emc/vmax/iscsi.py":[{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"ddac080a331e3178970bcc7d5598497cbf619ec1","unresolved":false,"context_lines":[{"line_number":409,"context_line":"    def manage_existing_snapshot(self, snapshot, existing_ref):"},{"line_number":410,"context_line":"        \"\"\"Manage an existing VMAX Snapshot (import to Cinder)."},{"line_number":411,"context_line":""},{"line_number":412,"context_line":"        Renames the Snapshot to prefix it with OS- to indicate"},{"line_number":413,"context_line":"        it is managed by Cinder"},{"line_number":414,"context_line":"        :param snapshot: the snapshot object"},{"line_number":415,"context_line":"        :param existing_ref: the snapshot name on the backend VMAX"},{"line_number":416,"context_line":"        :return: model_update"},{"line_number":417,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"ff82abbf_7f8d0829","line":414,"range":{"start_line":412,"start_character":0,"end_line":414,"end_character":43},"updated":"2017-11-30 16:13:09.000000000","message":"missing blank line.","commit_id":"9b6fdc8029ca9dc9a497b223c37893c6ce600b22"},{"author":{"_account_id":12670,"name":"Helen Walsh","email":"helen.walsh@emc.com","username":"walshh2"},"change_message_id":"23b439d0146b2b64182b0b784002a7393710fea5","unresolved":false,"context_lines":[{"line_number":409,"context_line":"    def manage_existing_snapshot(self, snapshot, existing_ref):"},{"line_number":410,"context_line":"        \"\"\"Manage an existing VMAX Snapshot (import to Cinder)."},{"line_number":411,"context_line":""},{"line_number":412,"context_line":"        Renames the Snapshot to prefix it with OS- to indicate"},{"line_number":413,"context_line":"        it is managed by Cinder"},{"line_number":414,"context_line":"        :param snapshot: the snapshot object"},{"line_number":415,"context_line":"        :param existing_ref: the snapshot name on the backend VMAX"},{"line_number":416,"context_line":"        :return: model_update"},{"line_number":417,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":6,"id":"df87a7cf_04691824","line":414,"range":{"start_line":412,"start_character":0,"end_line":414,"end_character":43},"in_reply_to":"ff82abbf_7f8d0829","updated":"2017-12-01 14:48:22.000000000","message":"sure","commit_id":"9b6fdc8029ca9dc9a497b223c37893c6ce600b22"}],"cinder/volume/drivers/dell_emc/vmax/rest.py":[{"author":{"_account_id":23414,"name":"Ciara Stacke","email":"ciara.stacke@emc.com","username":"cstacke"},"change_message_id":"c8b842f76d7e702428c3eb27fbb5f54b3e288436","unresolved":false,"context_lines":[{"line_number":2121,"context_line":"    def modify_storagegroup_snap("},{"line_number":2122,"context_line":"            self, array, source_sg_id, target_sg_id, snap_name,"},{"line_number":2123,"context_line":"            extra_specs, link\u003dFalse, unlink\u003dFalse):"},{"line_number":2124,"context_line":"        \"\"\"Modify an individual SG snapshot on VMAX backend."},{"line_number":2125,"context_line":""},{"line_number":2126,"context_line":"        Link or unlink a snapVx to or from a target storagegroup,"},{"line_number":2127,"context_line":"        or rename a Snapshot to a specified value on the backend VMAX"},{"line_number":2128,"context_line":""},{"line_number":2129,"context_line":"        :param array: the array serial number"},{"line_number":2130,"context_line":"        :param source_sg_id: the source device id"}],"source_content_type":"text/x-python","patch_set":7,"id":"df87a7cf_8a33a113","line":2127,"range":{"start_line":2124,"start_character":11,"end_line":2127,"end_character":69},"updated":"2017-12-15 12:35:03.000000000","message":"This shouldn\u0027t be modified - this function is not changing. This change should be made on \u0027modify_volume_snap\u0027 above, line 1545 (changing the word \u0027storagegroup\u0027 for \u0027volume\u0027).","commit_id":"ee44b4e974cc2a732d5f27fa57775f1fff01b859"},{"author":{"_account_id":23601,"name":"michael","display_name":"michael-mcaleer","email":"Michael.Mcaleer@dell.com","username":"michael-mcaleer"},"change_message_id":"6e3406a045a215dc333e66110b223fab2c0146d8","unresolved":false,"context_lines":[{"line_number":2121,"context_line":"    def modify_storagegroup_snap("},{"line_number":2122,"context_line":"            self, array, source_sg_id, target_sg_id, snap_name,"},{"line_number":2123,"context_line":"            extra_specs, link\u003dFalse, unlink\u003dFalse):"},{"line_number":2124,"context_line":"        \"\"\"Modify an individual SG snapshot on VMAX backend."},{"line_number":2125,"context_line":""},{"line_number":2126,"context_line":"        Link or unlink a snapVx to or from a target storagegroup,"},{"line_number":2127,"context_line":"        or rename a Snapshot to a specified value on the backend VMAX"},{"line_number":2128,"context_line":""},{"line_number":2129,"context_line":"        :param array: the array serial number"},{"line_number":2130,"context_line":"        :param source_sg_id: the source device id"}],"source_content_type":"text/x-python","patch_set":7,"id":"df87a7cf_f079c9fb","line":2127,"range":{"start_line":2124,"start_character":11,"end_line":2127,"end_character":69},"in_reply_to":"df87a7cf_8a33a113","updated":"2017-12-18 14:58:06.000000000","message":"This is a mistake on my part, initially the change was incorrectly made using the modify_storagegroup_snap function, but this was changed then to modify_volume_snap. Whilst I reverted the changes made to the code I forgot about changes to the comments.","commit_id":"ee44b4e974cc2a732d5f27fa57775f1fff01b859"}]}
