)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"67d3eb8f03a51d1327f38ec4616bdb59cc20c829","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Kiran Pawar \u003ckinpaa@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2026-01-22 15:45:07 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NetApp: Delete parent snapshot from child share after clone"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When creating a share from snapshot (NetApp volume clone),"},{"line_number":10,"context_line":"the parent snapshot is being copied into the child volume."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"49b10e35_6a4c2d19","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":59},"updated":"2026-01-22 18:59:40.000000000","message":"Can you explain this better for those of us that aren\u0027t intimately aware of ONTAP\u0027s internals:\n\n1) An end user tries to create a new share from a manila snapshot\n2) Internally, the ONTAP driver clones the snapshot into a new FlexVol\n3) If the driver is asked to split the clone immediately (via share type extra specs), it\u0027ll start a clone split operation\n4) The driver doesn\u0027t monitor the clone split operation, it completes async and at some point\n\nWith this change:\n\n3) If the driver is asked to split the clone immediately:\n3.a) The driver soft-deletes the parent snapshot?!?\n3.b) The driver will start a clone split operation\n\nIs the \"parent snapshot\" not the same as the manila snapshot that was cloned? Is it a copy that\u0027s hidden?","commit_id":"b14a8b0044aba2e37238987f9d1274e324e5d3f3"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"7d0f96ea58e9da176b38905b8ba102f9a1620a2e","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Kiran Pawar \u003ckinpaa@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2026-01-22 15:45:07 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NetApp: Delete parent snapshot from child share after clone"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When creating a share from snapshot (NetApp volume clone),"},{"line_number":10,"context_line":"the parent snapshot is being copied into the child volume."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"6b694398_8e1fc3ee","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":59},"in_reply_to":"49b10e35_6a4c2d19","updated":"2026-01-23 10:18:23.000000000","message":"Please check description of command \"volume-clone-create\" from https://docs.netapp.com/p/ontap/nmsdk/9.8/Reference-Manual-For-Ontap-9101-Apis.pdf\n\nParent Snapshot name within \u0027parent-volume\u0027 that is to serve as the parent snapshot for the clone. If not provided, the filer will create a new snapshot named \u0027clone_parent_\u0027 (using a freshy-generated UUID) in \u0027parent-volume\u0027 for this purpose. So After clone, we have child/clone volume with snapshot in it. Thus two copies of snapshots. So we soft-delete additional copy within child/clone since delete can not be performed unless split is done. The soft-deleted snapshots then actually gets deleted later.","commit_id":"b14a8b0044aba2e37238987f9d1274e324e5d3f3"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"5bd57dd889557db7110b39616326f1197346e500","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Kiran Pawar \u003ckinpaa@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2026-01-22 15:45:07 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NetApp: Delete parent snapshot from child share after clone"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When creating a share from snapshot (NetApp volume clone),"},{"line_number":10,"context_line":"the parent snapshot is being copied into the child volume."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"e3f8f6a6_457237e2","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":59},"in_reply_to":"6b694398_8e1fc3ee","updated":"2026-01-23 10:21:17.000000000","message":"Additional reference - https://docs.netapp.com/us-en/ontap/volumes/split-flexclone-from-parent-task.html","commit_id":"b14a8b0044aba2e37238987f9d1274e324e5d3f3"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"86592d1375f75d5dc8f56985e188777afe6088a1","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Kiran Pawar \u003ckinpaa@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2026-01-22 15:45:07 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NetApp: Delete parent snapshot from child share after clone"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When creating a share from snapshot (NetApp volume clone),"},{"line_number":10,"context_line":"the parent snapshot is being copied into the child volume."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"25a468bc_1ee05210","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":59},"in_reply_to":"e3f8f6a6_457237e2","updated":"2026-01-23 18:56:27.000000000","message":"OKay, can you add these references to the commit message and release notes perhaps?","commit_id":"b14a8b0044aba2e37238987f9d1274e324e5d3f3"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"86592d1375f75d5dc8f56985e188777afe6088a1","unresolved":true,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2026-01-22 15:45:07 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NetApp: Delete parent snapshot from child share after clone"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When creating a share from snapshot (NetApp volume clone),"},{"line_number":10,"context_line":"the parent snapshot is being copied into the child volume."},{"line_number":11,"context_line":"This is not expected/not being tracked by manila. So we handle the"},{"line_number":12,"context_line":"soft deletion of that snapshot. It cannot be deleted immediately,"},{"line_number":13,"context_line":"because the clone split needs to finish first."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"If the snapshot is not existing, because we are having a space"},{"line_number":16,"context_line":"guaranteed volume or being on a FAS system, the snapshot would"},{"line_number":17,"context_line":"not exist and the soft delete (rename) would silently fail."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Closes-Bug: #2122737"},{"line_number":20,"context_line":"Change-Id: Id478508bae9c2f034d48742ab00029cacd4cb315"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"52b197fa_71c804db","line":17,"range":{"start_line":8,"start_character":0,"end_line":17,"end_character":59},"updated":"2026-01-23 18:56:27.000000000","message":"```suggestion\n\nWhen creating a share from snapshot (NetApp volume clone),\nONTAP copies the snapshot into the new share. This internal copy\nis not tracked with Manila, and causes issues with Manila\u0027s\noperations. For example, while the internal copy exists, attempts\nto split the clone from its parent will fail.\n\nThis change soft-deletes this internal snapshot before attempting\na clone-split operation.\n```","commit_id":"b14a8b0044aba2e37238987f9d1274e324e5d3f3"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"8b62725ae651405ba53d35a6b041536bbcae062b","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2026-01-22 15:45:07 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NetApp: Delete parent snapshot from child share after clone"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When creating a share from snapshot (NetApp volume clone),"},{"line_number":10,"context_line":"the parent snapshot is being copied into the child volume."},{"line_number":11,"context_line":"This is not expected/not being tracked by manila. So we handle the"},{"line_number":12,"context_line":"soft deletion of that snapshot. It cannot be deleted immediately,"},{"line_number":13,"context_line":"because the clone split needs to finish first."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"If the snapshot is not existing, because we are having a space"},{"line_number":16,"context_line":"guaranteed volume or being on a FAS system, the snapshot would"},{"line_number":17,"context_line":"not exist and the soft delete (rename) would silently fail."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Closes-Bug: #2122737"},{"line_number":20,"context_line":"Change-Id: Id478508bae9c2f034d48742ab00029cacd4cb315"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"4e11d8b1_c916b14f","line":17,"range":{"start_line":8,"start_character":0,"end_line":17,"end_character":59},"in_reply_to":"52b197fa_71c804db","updated":"2026-01-26 09:22:48.000000000","message":"Done","commit_id":"b14a8b0044aba2e37238987f9d1274e324e5d3f3"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"33c75222ea95918264f96035e8287e4b3eb5b4e4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"1efc5204_e0a615b9","updated":"2025-12-16 12:52:02.000000000","message":"Some comments.","commit_id":"db854eb3ea33137d2168d611741d0037efb44ab6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"f39ab66b5757c7895ceae33da3de40d4f213d6af","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"c52554e8_944ba70a","updated":"2025-12-12 10:47:05.000000000","message":"run-NetApp CI","commit_id":"db854eb3ea33137d2168d611741d0037efb44ab6"},{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"e4bf7195c1a95ce23284e48dfec5765a186bbb41","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"713533af_9a66c600","updated":"2025-12-19 05:29:48.000000000","message":"LGTM","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"80669103001aab19c2c0c1d3971ef0000d7cbbda","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"faa45fdc_0a918d5e","updated":"2026-01-04 12:44:49.000000000","message":"Thank you, Kiran, for working on this. I have a few comments on the patch. Please take a look and let me know if you have any questions.\"","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"},{"author":{"_account_id":38371,"name":"Kumar Tadepalli","display_name":"Kumar Tadepalli","email":"kumart.lead@gmail.com","username":"kumart","status":"NetApp"},"change_message_id":"3fcce9e3e1482802f6e145469a98f8f1cd2949ed","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"04d59022_6421aa80","updated":"2026-01-12 04:38:15.000000000","message":"LGTM","commit_id":"eb93a6562930ad18173972e8ab1c740c8f0c987c"},{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"90bb8953a8140375b59c0333f477b82138968d91","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"2de4ecbb_ebc5ff49","updated":"2026-01-22 15:28:23.000000000","message":"LGTM","commit_id":"eb93a6562930ad18173972e8ab1c740c8f0c987c"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"b698be9f33bd19a0767f4ff51ea9abe718013011","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"d61f89ac_75d0eca2","updated":"2026-01-15 14:58:55.000000000","message":"Thanks Kiran for working on this and incorporating the review comments. Once NetApp CI pass for this will change my vote from +1 to +2. Changes looks good for me.","commit_id":"eb93a6562930ad18173972e8ab1c740c8f0c987c"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"fe3102e0ffeb2d036326a1cfbcb16af5d7b382eb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"2006076d_a4c37452","updated":"2026-01-06 08:27:06.000000000","message":"run-NetApp CI","commit_id":"eb93a6562930ad18173972e8ab1c740c8f0c987c"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"1b15c3a13fdc4ff256795e8829c4f572e0a8fb2e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"e4f8731c_d9c92d2f","updated":"2026-01-15 15:05:53.000000000","message":"run-NetApp CI","commit_id":"eb93a6562930ad18173972e8ab1c740c8f0c987c"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"08da24091032ec0e1eca9d8574b6f8a0f55daff4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"8be398c8_5a9b10db","updated":"2026-01-22 16:20:00.000000000","message":"run-NetApp CI\n\nRebased on master due to merge conflict.","commit_id":"eb93a6562930ad18173972e8ab1c740c8f0c987c"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"7d0f96ea58e9da176b38905b8ba102f9a1620a2e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"966228ff_b2992bde","updated":"2026-01-23 10:18:23.000000000","message":"Run-NetApp CI","commit_id":"b14a8b0044aba2e37238987f9d1274e324e5d3f3"},{"author":{"_account_id":38371,"name":"Kumar Tadepalli","display_name":"Kumar Tadepalli","email":"kumart.lead@gmail.com","username":"kumart","status":"NetApp"},"change_message_id":"05852994653cc9a1464f68a458e7a8e26688defe","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"104f90f3_4aa1c741","updated":"2026-01-28 12:01:05.000000000","message":"LGTM","commit_id":"f8bd1b0ec2934ad07b2100f3049136ddfe523332"},{"author":{"_account_id":38371,"name":"Kumar Tadepalli","display_name":"Kumar Tadepalli","email":"kumart.lead@gmail.com","username":"kumart","status":"NetApp"},"change_message_id":"33c3ebfd13374d63d37ab044d68672d6565c3a1c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"bbd48a3d_6e3320dc","updated":"2026-01-28 12:00:33.000000000","message":"LGTM","commit_id":"f8bd1b0ec2934ad07b2100f3049136ddfe523332"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"9393801beb74035f3f6d8cc7950a751dccd98127","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"449fbe39_3303ef1f","updated":"2026-01-28 15:01:12.000000000","message":"LGTM, thanks for working on this fix","commit_id":"f8bd1b0ec2934ad07b2100f3049136ddfe523332"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4259cdc8332cf2460815726ee6f968f36d86a939","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"9d47d30d_9f699cdf","updated":"2026-01-26 18:21:43.000000000","message":"Need NetApp folks to weigh in","commit_id":"f8bd1b0ec2934ad07b2100f3049136ddfe523332"},{"author":{"_account_id":38373,"name":"Manideep","display_name":"Manideep","email":"manideep.openstack@gmail.com","username":"manideepn","status":"NetApp"},"change_message_id":"9e2c0fbcb3554726fac09ec95593e112323854e8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"f7fb678a_7cb70c37","updated":"2026-01-27 13:34:03.000000000","message":"NetApp zuul run passed with 0 failures for DHSS True, Rest config.\n\nhttps://netappopenstacklogserver.s3-us-west-1.amazonaws.com/logs/48/960948/8/upstream-check-manila/manila-tempest-plugin-ontap-dhss-rest/4d907d4/testr_results.html","commit_id":"f8bd1b0ec2934ad07b2100f3049136ddfe523332"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"3ca4405ffa8cf9bb02d2a6954b3025c3d931d918","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"322b80a4_13098077","updated":"2026-01-27 09:24:43.000000000","message":"Run NetApp-CI","commit_id":"f8bd1b0ec2934ad07b2100f3049136ddfe523332"},{"author":{"_account_id":38373,"name":"Manideep","display_name":"Manideep","email":"manideep.openstack@gmail.com","username":"manideepn","status":"NetApp"},"change_message_id":"2bd2f0bc5128fd66145c417a179066e808e3f29c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"4980ad98_ff725eb2","updated":"2026-01-27 09:31:06.000000000","message":"Run-NetApp CI","commit_id":"f8bd1b0ec2934ad07b2100f3049136ddfe523332"}],"manila/share/drivers/netapp/dataontap/client/client_cmode.py":[{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"80669103001aab19c2c0c1d3971ef0000d7cbbda","unresolved":true,"context_lines":[{"line_number":3919,"context_line":"    def soft_delete_snapshot(self, volume_name, snapshot_name,"},{"line_number":3920,"context_line":"                             soft_delete\u003dFalse):"},{"line_number":3921,"context_line":"        \"\"\"Deletes a volume snapshot, or renames it if delete fails.\"\"\""},{"line_number":3922,"context_line":"        def _soft_delete_snapshot(cli, volume_name, snapshot_name):"},{"line_number":3923,"context_line":"            msg_args \u003d {\u0027snap\u0027: snapshot_name, \u0027vol\u0027: volume_name}"},{"line_number":3924,"context_line":"            try:"},{"line_number":3925,"context_line":"                cli.rename_snapshot(volume_name,"},{"line_number":3926,"context_line":"                                    snapshot_name,"},{"line_number":3927,"context_line":"                                    DELETED_PREFIX + snapshot_name)"},{"line_number":3928,"context_line":"                msg \u003d _(\u0027Soft-deleted snapshot %(snap)s on volume %(vol)s.\u0027)"},{"line_number":3929,"context_line":"                LOG.info(msg, msg_args)"},{"line_number":3930,"context_line":"            except netapp_api.NaApiError as e:"},{"line_number":3931,"context_line":"                if e.code \u003d\u003d netapp_api.EAPINOTFOUND:"},{"line_number":3932,"context_line":"                    msg \u003d _(\u0027Snapshot %(snap)s on volume %(vol)s not found.\u0027)"},{"line_number":3933,"context_line":"                    LOG.debug(msg, msg_args)"},{"line_number":3934,"context_line":"                    return"},{"line_number":3935,"context_line":"                else:"},{"line_number":3936,"context_line":"                    raise"},{"line_number":3937,"context_line":""},{"line_number":3938,"context_line":"            # Snapshots are locked by clone(s), so split the clone(s)"},{"line_number":3939,"context_line":"            snapshot_children \u003d cli.get_clone_children_for_snapshot("}],"source_content_type":"text/x-python","patch_set":5,"id":"0284ca6f_cc8d7b07","line":3936,"range":{"start_line":3922,"start_character":7,"end_line":3936,"end_character":25},"updated":"2026-01-04 12:44:49.000000000","message":"Better to move out this method from from soft_delete_snapshot(). For each time you call soft_delete_snapshot() method, python execute the method definition of _soft_delete_snapshot() and create the new function object in memory.","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"23d2d7d7ede45f9c4d3bcfdea5c0e073e373614e","unresolved":false,"context_lines":[{"line_number":3919,"context_line":"    def soft_delete_snapshot(self, volume_name, snapshot_name,"},{"line_number":3920,"context_line":"                             soft_delete\u003dFalse):"},{"line_number":3921,"context_line":"        \"\"\"Deletes a volume snapshot, or renames it if delete fails.\"\"\""},{"line_number":3922,"context_line":"        def _soft_delete_snapshot(cli, volume_name, snapshot_name):"},{"line_number":3923,"context_line":"            msg_args \u003d {\u0027snap\u0027: snapshot_name, \u0027vol\u0027: volume_name}"},{"line_number":3924,"context_line":"            try:"},{"line_number":3925,"context_line":"                cli.rename_snapshot(volume_name,"},{"line_number":3926,"context_line":"                                    snapshot_name,"},{"line_number":3927,"context_line":"                                    DELETED_PREFIX + snapshot_name)"},{"line_number":3928,"context_line":"                msg \u003d _(\u0027Soft-deleted snapshot %(snap)s on volume %(vol)s.\u0027)"},{"line_number":3929,"context_line":"                LOG.info(msg, msg_args)"},{"line_number":3930,"context_line":"            except netapp_api.NaApiError as e:"},{"line_number":3931,"context_line":"                if e.code \u003d\u003d netapp_api.EAPINOTFOUND:"},{"line_number":3932,"context_line":"                    msg \u003d _(\u0027Snapshot %(snap)s on volume %(vol)s not found.\u0027)"},{"line_number":3933,"context_line":"                    LOG.debug(msg, msg_args)"},{"line_number":3934,"context_line":"                    return"},{"line_number":3935,"context_line":"                else:"},{"line_number":3936,"context_line":"                    raise"},{"line_number":3937,"context_line":""},{"line_number":3938,"context_line":"            # Snapshots are locked by clone(s), so split the clone(s)"},{"line_number":3939,"context_line":"            snapshot_children \u003d cli.get_clone_children_for_snapshot("}],"source_content_type":"text/x-python","patch_set":5,"id":"b991facc_9923a662","line":3936,"range":{"start_line":3922,"start_character":7,"end_line":3936,"end_character":25},"in_reply_to":"0284ca6f_cc8d7b07","updated":"2026-01-05 12:22:32.000000000","message":"Done","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"80669103001aab19c2c0c1d3971ef0000d7cbbda","unresolved":true,"context_lines":[{"line_number":3936,"context_line":"                    raise"},{"line_number":3937,"context_line":""},{"line_number":3938,"context_line":"            # Snapshots are locked by clone(s), so split the clone(s)"},{"line_number":3939,"context_line":"            snapshot_children \u003d cli.get_clone_children_for_snapshot("},{"line_number":3940,"context_line":"                volume_name, DELETED_PREFIX + snapshot_name)"},{"line_number":3941,"context_line":"            for snapshot_child in snapshot_children:"},{"line_number":3942,"context_line":"                cli.volume_clone_split_start(snapshot_child[\u0027name\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"bb2c77da_a4a17777","line":3939,"updated":"2026-01-04 12:44:49.000000000","message":"Once the _soft_delete_snapshot() method has been moved, update all references by replacing cli with self.","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"23d2d7d7ede45f9c4d3bcfdea5c0e073e373614e","unresolved":false,"context_lines":[{"line_number":3936,"context_line":"                    raise"},{"line_number":3937,"context_line":""},{"line_number":3938,"context_line":"            # Snapshots are locked by clone(s), so split the clone(s)"},{"line_number":3939,"context_line":"            snapshot_children \u003d cli.get_clone_children_for_snapshot("},{"line_number":3940,"context_line":"                volume_name, DELETED_PREFIX + snapshot_name)"},{"line_number":3941,"context_line":"            for snapshot_child in snapshot_children:"},{"line_number":3942,"context_line":"                cli.volume_clone_split_start(snapshot_child[\u0027name\u0027])"}],"source_content_type":"text/x-python","patch_set":5,"id":"b50b3a5f_c1e6fc60","line":3939,"in_reply_to":"bb2c77da_a4a17777","updated":"2026-01-05 12:22:32.000000000","message":"Done","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"80669103001aab19c2c0c1d3971ef0000d7cbbda","unresolved":true,"context_lines":[{"line_number":3941,"context_line":"            for snapshot_child in snapshot_children:"},{"line_number":3942,"context_line":"                cli.volume_clone_split_start(snapshot_child[\u0027name\u0027])"},{"line_number":3943,"context_line":""},{"line_number":3944,"context_line":"        if soft_delete:"},{"line_number":3945,"context_line":"            _soft_delete_snapshot(self, volume_name, snapshot_name)"},{"line_number":3946,"context_line":"        else:"},{"line_number":3947,"context_line":"            try:"},{"line_number":3948,"context_line":"                self.delete_snapshot(volume_name, snapshot_name)"},{"line_number":3949,"context_line":"            except netapp_api.NaApiError:"},{"line_number":3950,"context_line":"                _soft_delete_snapshot(self, volume_name, snapshot_name)"},{"line_number":3951,"context_line":""},{"line_number":3952,"context_line":"    @na_utils.trace"},{"line_number":3953,"context_line":"    def prune_deleted_snapshots(self):"}],"source_content_type":"text/x-python","patch_set":5,"id":"e198885e_696e3e93","line":3950,"range":{"start_line":3944,"start_character":8,"end_line":3950,"end_character":71},"updated":"2026-01-04 12:44:49.000000000","message":"Remove else condition, you can return the method if soft_delete condition met it from , this can be as below \n\nif soft_delete:\n   _soft_delete_snapshot(self, volume_name, snapshot_name)\n   return \n   \ntry:\n  self.delete_snapshot(volume_name, snapshot_name)\nexcept netapp_api.NaApiError:\n  _soft_delete_snapshot(self, volume_name, snapshot_name)","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"23d2d7d7ede45f9c4d3bcfdea5c0e073e373614e","unresolved":false,"context_lines":[{"line_number":3941,"context_line":"            for snapshot_child in snapshot_children:"},{"line_number":3942,"context_line":"                cli.volume_clone_split_start(snapshot_child[\u0027name\u0027])"},{"line_number":3943,"context_line":""},{"line_number":3944,"context_line":"        if soft_delete:"},{"line_number":3945,"context_line":"            _soft_delete_snapshot(self, volume_name, snapshot_name)"},{"line_number":3946,"context_line":"        else:"},{"line_number":3947,"context_line":"            try:"},{"line_number":3948,"context_line":"                self.delete_snapshot(volume_name, snapshot_name)"},{"line_number":3949,"context_line":"            except netapp_api.NaApiError:"},{"line_number":3950,"context_line":"                _soft_delete_snapshot(self, volume_name, snapshot_name)"},{"line_number":3951,"context_line":""},{"line_number":3952,"context_line":"    @na_utils.trace"},{"line_number":3953,"context_line":"    def prune_deleted_snapshots(self):"}],"source_content_type":"text/x-python","patch_set":5,"id":"9f6a1890_5a46158b","line":3950,"range":{"start_line":3944,"start_character":8,"end_line":3950,"end_character":71},"in_reply_to":"e198885e_696e3e93","updated":"2026-01-05 12:22:32.000000000","message":"Done","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"86592d1375f75d5dc8f56985e188777afe6088a1","unresolved":true,"context_lines":[{"line_number":4141,"context_line":"            self.volume_clone_split_start(snapshot_child[\u0027name\u0027])"},{"line_number":4142,"context_line":""},{"line_number":4143,"context_line":"    @na_utils.trace"},{"line_number":4144,"context_line":"    def soft_delete_snapshot(self, volume_name, snapshot_name,"},{"line_number":4145,"context_line":"                             soft_delete\u003dFalse):"},{"line_number":4146,"context_line":"        \"\"\"Deletes a volume snapshot, or renames \u0026 splits if delete fails.\"\"\""},{"line_number":4147,"context_line":"        if soft_delete:"},{"line_number":4148,"context_line":"            self._soft_delete_snapshot(volume_name, snapshot_name)"}],"source_content_type":"text/x-python","patch_set":7,"id":"e5744512_4b797bf0","line":4145,"range":{"start_line":4144,"start_character":8,"end_line":4145,"end_character":48},"updated":"2026-01-23 18:56:27.000000000","message":"the method\u0027s called \"soft_delete_snapshot\" which defaults not to soft delete?\n\nIt feels like you can add the new error handling without changing the logic of deleting and proceeding to soft-delete if deletion failed.","commit_id":"b14a8b0044aba2e37238987f9d1274e324e5d3f3"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"8b62725ae651405ba53d35a6b041536bbcae062b","unresolved":false,"context_lines":[{"line_number":4141,"context_line":"            self.volume_clone_split_start(snapshot_child[\u0027name\u0027])"},{"line_number":4142,"context_line":""},{"line_number":4143,"context_line":"    @na_utils.trace"},{"line_number":4144,"context_line":"    def soft_delete_snapshot(self, volume_name, snapshot_name,"},{"line_number":4145,"context_line":"                             soft_delete\u003dFalse):"},{"line_number":4146,"context_line":"        \"\"\"Deletes a volume snapshot, or renames \u0026 splits if delete fails.\"\"\""},{"line_number":4147,"context_line":"        if soft_delete:"},{"line_number":4148,"context_line":"            self._soft_delete_snapshot(volume_name, snapshot_name)"}],"source_content_type":"text/x-python","patch_set":7,"id":"e38afe36_8f50196e","line":4145,"range":{"start_line":4144,"start_character":8,"end_line":4145,"end_character":48},"in_reply_to":"e5744512_4b797bf0","updated":"2026-01-26 09:22:48.000000000","message":"Done","commit_id":"b14a8b0044aba2e37238987f9d1274e324e5d3f3"}],"manila/share/drivers/netapp/dataontap/client/client_cmode_rest.py":[{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"33c75222ea95918264f96035e8287e4b3eb5b4e4","unresolved":true,"context_lines":[{"line_number":2152,"context_line":""},{"line_number":2153,"context_line":"    @na_utils.trace"},{"line_number":2154,"context_line":"    def soft_delete_snapshot(self, volume_name, snapshot_name,"},{"line_number":2155,"context_line":"                             soft_only\u003dFalse):"},{"line_number":2156,"context_line":"        \"\"\"Deletes a volume snapshot, or renames it if delete fails.\"\"\""},{"line_number":2157,"context_line":"        def _soft_delete_snapshot(cli, volume_name, snapshot_name):"},{"line_number":2158,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":3,"id":"d0f328dc_f27b46db","line":2155,"updated":"2025-12-16 12:52:02.000000000","message":"Renaming this to soft_delete\u003dTrue/False would me more apt IMO.","commit_id":"db854eb3ea33137d2168d611741d0037efb44ab6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"42d5aa3e0102f2d6e06f0e568ca8931543aaf4d0","unresolved":false,"context_lines":[{"line_number":2152,"context_line":""},{"line_number":2153,"context_line":"    @na_utils.trace"},{"line_number":2154,"context_line":"    def soft_delete_snapshot(self, volume_name, snapshot_name,"},{"line_number":2155,"context_line":"                             soft_only\u003dFalse):"},{"line_number":2156,"context_line":"        \"\"\"Deletes a volume snapshot, or renames it if delete fails.\"\"\""},{"line_number":2157,"context_line":"        def _soft_delete_snapshot(cli, volume_name, snapshot_name):"},{"line_number":2158,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":3,"id":"f92b8010_d0d1a2a9","line":2155,"in_reply_to":"d0f328dc_f27b46db","updated":"2025-12-17 16:20:37.000000000","message":"Done","commit_id":"db854eb3ea33137d2168d611741d0037efb44ab6"},{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"33c75222ea95918264f96035e8287e4b3eb5b4e4","unresolved":true,"context_lines":[{"line_number":2177,"context_line":"                cli.volume_clone_split_start(snapshot_child[\u0027name\u0027])"},{"line_number":2178,"context_line":""},{"line_number":2179,"context_line":"        if soft_only:"},{"line_number":2180,"context_line":"            _soft_delete_snapshot(self, volume_name, snapshot_name)"},{"line_number":2181,"context_line":"        else:"},{"line_number":2182,"context_line":"            try:"},{"line_number":2183,"context_line":"                self.delete_snapshot(volume_name, snapshot_name)"}],"source_content_type":"text/x-python","patch_set":3,"id":"09de771b_ee074e4c","line":2180,"updated":"2025-12-16 12:52:02.000000000","message":"If we are deleting the snapshots here, what is the point of renaming them with Deleteted prefix? Shouldn\u0027t we have a looped call instead to delete these snapshot overnight rather? That is how we do the deletion on cinder driver.","commit_id":"db854eb3ea33137d2168d611741d0037efb44ab6"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"42d5aa3e0102f2d6e06f0e568ca8931543aaf4d0","unresolved":false,"context_lines":[{"line_number":2177,"context_line":"                cli.volume_clone_split_start(snapshot_child[\u0027name\u0027])"},{"line_number":2178,"context_line":""},{"line_number":2179,"context_line":"        if soft_only:"},{"line_number":2180,"context_line":"            _soft_delete_snapshot(self, volume_name, snapshot_name)"},{"line_number":2181,"context_line":"        else:"},{"line_number":2182,"context_line":"            try:"},{"line_number":2183,"context_line":"                self.delete_snapshot(volume_name, snapshot_name)"}],"source_content_type":"text/x-python","patch_set":3,"id":"cdaf5407_a604d3ae","line":2180,"in_reply_to":"09de771b_ee074e4c","updated":"2025-12-17 16:20:37.000000000","message":"we are soft deleting them means we rename them and then split the clones. Theses snapshots with DELETED_PREFIX then cleaned in prune_deleted_snapshots() callback function.","commit_id":"db854eb3ea33137d2168d611741d0037efb44ab6"},{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"e4bf7195c1a95ce23284e48dfec5765a186bbb41","unresolved":false,"context_lines":[{"line_number":2177,"context_line":"                cli.volume_clone_split_start(snapshot_child[\u0027name\u0027])"},{"line_number":2178,"context_line":""},{"line_number":2179,"context_line":"        if soft_only:"},{"line_number":2180,"context_line":"            _soft_delete_snapshot(self, volume_name, snapshot_name)"},{"line_number":2181,"context_line":"        else:"},{"line_number":2182,"context_line":"            try:"},{"line_number":2183,"context_line":"                self.delete_snapshot(volume_name, snapshot_name)"}],"source_content_type":"text/x-python","patch_set":3,"id":"0b5f7a86_bca5a79a","line":2180,"in_reply_to":"cdaf5407_a604d3ae","updated":"2025-12-19 05:29:48.000000000","message":"Ack","commit_id":"db854eb3ea33137d2168d611741d0037efb44ab6"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"80669103001aab19c2c0c1d3971ef0000d7cbbda","unresolved":true,"context_lines":[{"line_number":2178,"context_line":"    def soft_delete_snapshot(self, volume_name, snapshot_name,"},{"line_number":2179,"context_line":"                             soft_delete\u003dFalse):"},{"line_number":2180,"context_line":"        \"\"\"Deletes a volume snapshot, or renames it if delete fails.\"\"\""},{"line_number":2181,"context_line":"        def _soft_delete_snapshot(cli, volume_name, snapshot_name):"},{"line_number":2182,"context_line":"            try:"},{"line_number":2183,"context_line":"                cli.rename_snapshot(volume_name,"},{"line_number":2184,"context_line":"                                    snapshot_name,"},{"line_number":2185,"context_line":"                                    DELETED_PREFIX + snapshot_name)"},{"line_number":2186,"context_line":"                msg \u003d _(\u0027Soft-deleted snapshot %(snap)s on volume %(vol)s.\u0027)"},{"line_number":2187,"context_line":"                msg_args \u003d {\u0027snap\u0027: snapshot_name, \u0027vol\u0027: volume_name}"},{"line_number":2188,"context_line":"                LOG.info(msg, msg_args)"},{"line_number":2189,"context_line":"            except netapp_api.NaApiError as e:"},{"line_number":2190,"context_line":"                if e.code \u003d\u003d netapp_api.EREST_SNAPSHOT_NOT_FOUND:"},{"line_number":2191,"context_line":"                    msg \u003d _(\u0027Snapshot %(snap)s on volume %(vol)s not found.\u0027)"},{"line_number":2192,"context_line":"                    LOG.debug(msg, msg_args)"},{"line_number":2193,"context_line":"                    return"},{"line_number":2194,"context_line":"                else:"},{"line_number":2195,"context_line":"                    raise"},{"line_number":2196,"context_line":""},{"line_number":2197,"context_line":"            # Snapshots are locked by clone(s), so split the clone(s)"},{"line_number":2198,"context_line":"            snapshot_children \u003d cli.get_clone_children_for_snapshot("},{"line_number":2199,"context_line":"                volume_name, DELETED_PREFIX + snapshot_name)"},{"line_number":2200,"context_line":"            for snapshot_child in snapshot_children:"},{"line_number":2201,"context_line":"                cli.volume_clone_split_start(snapshot_child[\u0027name\u0027])"},{"line_number":2202,"context_line":""},{"line_number":2203,"context_line":"        if soft_delete:"},{"line_number":2204,"context_line":"            _soft_delete_snapshot(self, volume_name, snapshot_name)"}],"source_content_type":"text/x-python","patch_set":5,"id":"f7cf3172_f7004cbe","line":2201,"range":{"start_line":2181,"start_character":8,"end_line":2201,"end_character":68},"updated":"2026-01-04 12:44:49.000000000","message":"All the comments provided for ZAPI also applicable here.","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"23d2d7d7ede45f9c4d3bcfdea5c0e073e373614e","unresolved":false,"context_lines":[{"line_number":2178,"context_line":"    def soft_delete_snapshot(self, volume_name, snapshot_name,"},{"line_number":2179,"context_line":"                             soft_delete\u003dFalse):"},{"line_number":2180,"context_line":"        \"\"\"Deletes a volume snapshot, or renames it if delete fails.\"\"\""},{"line_number":2181,"context_line":"        def _soft_delete_snapshot(cli, volume_name, snapshot_name):"},{"line_number":2182,"context_line":"            try:"},{"line_number":2183,"context_line":"                cli.rename_snapshot(volume_name,"},{"line_number":2184,"context_line":"                                    snapshot_name,"},{"line_number":2185,"context_line":"                                    DELETED_PREFIX + snapshot_name)"},{"line_number":2186,"context_line":"                msg \u003d _(\u0027Soft-deleted snapshot %(snap)s on volume %(vol)s.\u0027)"},{"line_number":2187,"context_line":"                msg_args \u003d {\u0027snap\u0027: snapshot_name, \u0027vol\u0027: volume_name}"},{"line_number":2188,"context_line":"                LOG.info(msg, msg_args)"},{"line_number":2189,"context_line":"            except netapp_api.NaApiError as e:"},{"line_number":2190,"context_line":"                if e.code \u003d\u003d netapp_api.EREST_SNAPSHOT_NOT_FOUND:"},{"line_number":2191,"context_line":"                    msg \u003d _(\u0027Snapshot %(snap)s on volume %(vol)s not found.\u0027)"},{"line_number":2192,"context_line":"                    LOG.debug(msg, msg_args)"},{"line_number":2193,"context_line":"                    return"},{"line_number":2194,"context_line":"                else:"},{"line_number":2195,"context_line":"                    raise"},{"line_number":2196,"context_line":""},{"line_number":2197,"context_line":"            # Snapshots are locked by clone(s), so split the clone(s)"},{"line_number":2198,"context_line":"            snapshot_children \u003d cli.get_clone_children_for_snapshot("},{"line_number":2199,"context_line":"                volume_name, DELETED_PREFIX + snapshot_name)"},{"line_number":2200,"context_line":"            for snapshot_child in snapshot_children:"},{"line_number":2201,"context_line":"                cli.volume_clone_split_start(snapshot_child[\u0027name\u0027])"},{"line_number":2202,"context_line":""},{"line_number":2203,"context_line":"        if soft_delete:"},{"line_number":2204,"context_line":"            _soft_delete_snapshot(self, volume_name, snapshot_name)"}],"source_content_type":"text/x-python","patch_set":5,"id":"acc9f355_d36d3e7c","line":2201,"range":{"start_line":2181,"start_character":8,"end_line":2201,"end_character":68},"in_reply_to":"f7cf3172_f7004cbe","updated":"2026-01-05 12:22:32.000000000","message":"Done","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"86592d1375f75d5dc8f56985e188777afe6088a1","unresolved":true,"context_lines":[{"line_number":2325,"context_line":""},{"line_number":2326,"context_line":"    @na_utils.trace"},{"line_number":2327,"context_line":"    def soft_delete_snapshot(self, volume_name, snapshot_name,"},{"line_number":2328,"context_line":"                             soft_delete\u003dFalse):"},{"line_number":2329,"context_line":"        \"\"\"Deletes a volume snapshot, or renames \u0026 splits if delete fails.\"\"\""},{"line_number":2330,"context_line":"        if soft_delete:"},{"line_number":2331,"context_line":"            self._soft_delete_snapshot(volume_name, snapshot_name)"}],"source_content_type":"text/x-python","patch_set":7,"id":"d0e304a6_68f6da2a","line":2328,"range":{"start_line":2328,"start_character":29,"end_line":2328,"end_character":46},"updated":"2026-01-23 18:56:27.000000000","message":"same comment as in the ONTAPI module","commit_id":"b14a8b0044aba2e37238987f9d1274e324e5d3f3"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"8b62725ae651405ba53d35a6b041536bbcae062b","unresolved":false,"context_lines":[{"line_number":2325,"context_line":""},{"line_number":2326,"context_line":"    @na_utils.trace"},{"line_number":2327,"context_line":"    def soft_delete_snapshot(self, volume_name, snapshot_name,"},{"line_number":2328,"context_line":"                             soft_delete\u003dFalse):"},{"line_number":2329,"context_line":"        \"\"\"Deletes a volume snapshot, or renames \u0026 splits if delete fails.\"\"\""},{"line_number":2330,"context_line":"        if soft_delete:"},{"line_number":2331,"context_line":"            self._soft_delete_snapshot(volume_name, snapshot_name)"}],"source_content_type":"text/x-python","patch_set":7,"id":"2a37b172_d7034461","line":2328,"range":{"start_line":2328,"start_character":29,"end_line":2328,"end_character":46},"in_reply_to":"d0e304a6_68f6da2a","updated":"2026-01-26 09:22:48.000000000","message":"Done","commit_id":"b14a8b0044aba2e37238987f9d1274e324e5d3f3"}],"manila/share/drivers/netapp/dataontap/cluster_mode/lib_base.py":[{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"80669103001aab19c2c0c1d3971ef0000d7cbbda","unresolved":true,"context_lines":[{"line_number":1864,"context_line":""},{"line_number":1865,"context_line":"        # split at the end: not be blocked by a busy volume"},{"line_number":1866,"context_line":"        if split:"},{"line_number":1867,"context_line":"            # can only delete the additional snap in child, if we plan to split"},{"line_number":1868,"context_line":"            vserver_client.soft_delete_snapshot(share_name,"},{"line_number":1869,"context_line":"                                                parent_snapshot_name,"},{"line_number":1870,"context_line":"                                                soft_delete\u003dTrue)"},{"line_number":1871,"context_line":"            vserver_client.volume_clone_split_start(share_name)"},{"line_number":1872,"context_line":""},{"line_number":1873,"context_line":"    @na_utils.trace"}],"source_content_type":"text/x-python","patch_set":5,"id":"32fcba6c_76979d08","line":1870,"range":{"start_line":1867,"start_character":12,"end_line":1870,"end_character":65},"updated":"2026-01-04 12:44:49.000000000","message":"Is unit test is added for this ..? if not please add the unit test for this.","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"23d2d7d7ede45f9c4d3bcfdea5c0e073e373614e","unresolved":false,"context_lines":[{"line_number":1864,"context_line":""},{"line_number":1865,"context_line":"        # split at the end: not be blocked by a busy volume"},{"line_number":1866,"context_line":"        if split:"},{"line_number":1867,"context_line":"            # can only delete the additional snap in child, if we plan to split"},{"line_number":1868,"context_line":"            vserver_client.soft_delete_snapshot(share_name,"},{"line_number":1869,"context_line":"                                                parent_snapshot_name,"},{"line_number":1870,"context_line":"                                                soft_delete\u003dTrue)"},{"line_number":1871,"context_line":"            vserver_client.volume_clone_split_start(share_name)"},{"line_number":1872,"context_line":""},{"line_number":1873,"context_line":"    @na_utils.trace"}],"source_content_type":"text/x-python","patch_set":5,"id":"c091f4ab_fe6eb42f","line":1870,"range":{"start_line":1867,"start_character":12,"end_line":1870,"end_character":65},"in_reply_to":"32fcba6c_76979d08","updated":"2026-01-05 12:22:32.000000000","message":"added","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"}],"releasenotes/notes/bug-2122737-take-care-to-remove-parent-snapshot-in-child-share-Edit-270a96892475c348.yaml":[{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"80669103001aab19c2c0c1d3971ef0000d7cbbda","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    NetApp ONTAP driver is fixed to delete parent snapshot created in child share"},{"line_number":5,"context_line":"    during Manila \"create share from shapshot\" operation. For more details, check"},{"line_number":6,"context_line":"    `Launchpad bug #2122737 \u003chttps://bugs.launchpad.net/manila/+bug/2122737\u003e`_."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"cebd3ea3_47c141d8","line":6,"range":{"start_line":4,"start_character":4,"end_line":6,"end_character":79},"updated":"2026-01-04 12:44:49.000000000","message":"It should be as below, don\u0027t use the chid as manila point of view we are creating the new share.\nYou can refer below release note for reference \nhttps://review.opendev.org/c/openstack/cinder/+/964191/21/releasenotes/notes/bug-2128652-fix-enable-configurable-polling-intervals-and-counter-caching-4f1d33a10d08e4a5.yaml\n\nfixes:\n  - |\n    NetApp Driver `bug #2122737\n    \u003chttps://bugs.launchpad.net/manila/+bug/2122737\u003e`_: During the \"Create share from snapshot\" operation, the NetApp Manila driver first creates the clone and then splits it. During this process, the newly created Manila share from the snapshot initially contains the same snapshot as the parent share. As part of this fix, the snapshot copied to the new share is deleted.","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"23d2d7d7ede45f9c4d3bcfdea5c0e073e373614e","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":"    NetApp ONTAP driver is fixed to delete parent snapshot created in child share"},{"line_number":5,"context_line":"    during Manila \"create share from shapshot\" operation. For more details, check"},{"line_number":6,"context_line":"    `Launchpad bug #2122737 \u003chttps://bugs.launchpad.net/manila/+bug/2122737\u003e`_."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"5d4d82f7_6feb6e76","line":6,"range":{"start_line":4,"start_character":4,"end_line":6,"end_character":79},"in_reply_to":"cebd3ea3_47c141d8","updated":"2026-01-05 12:22:32.000000000","message":"Done","commit_id":"ef0b97c214f1a22e4a6faa4277dc416bd0419e67"}]}
