)]}'
{"/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":"287c448976887b14dbf533f8fdcbe63159a10ea5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"59912047_db6ecac1","updated":"2026-04-17 15:00:09.000000000","message":"LGTM. Like the fact that it can be done per snapshot with retention.","commit_id":"4449e3b967e9f13af6a23b44073d063811a85738"},{"author":{"_account_id":9236,"name":"Jon Bernard","email":"jobernar@redhat.com","username":"jbernard"},"change_message_id":"1ed0beca207d891e164af90160b7b8aa94793cf8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"0318f652_e4af781d","updated":"2026-04-17 15:19:03.000000000","message":"Looks good, documentation is much appreciated.","commit_id":"4449e3b967e9f13af6a23b44073d063811a85738"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"c80f1de6489b055692c362874c7890e7e22823da","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"3b928220_bfa51cb3","updated":"2026-04-18 11:15:58.000000000","message":"one of the if condition is redundant. Can you check","commit_id":"4449e3b967e9f13af6a23b44073d063811a85738"},{"author":{"_account_id":38081,"name":"Anthony Galica","display_name":"agalica","email":"anthony.galica@hitachivantara.com","username":"agalica","status":"Hitachi Vantara"},"change_message_id":"01517273ce370643402c8e851db2b5cb66d92c56","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"edf1ae2e_bafdbb3f","updated":"2026-04-24 18:26:28.000000000","message":"recheck tempest timeout","commit_id":"0c76d87f23baef2835664e0d1b061e86e0d5fc07"}],"cinder/volume/drivers/hitachi/hbsd_rest.py":[{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"c80f1de6489b055692c362874c7890e7e22823da","unresolved":true,"context_lines":[{"line_number":556,"context_line":"                    \"autoSplit\": True,"},{"line_number":557,"context_line":"                    \"canCascade\": True,"},{"line_number":558,"context_line":"                    \"isDataReductionForceCopy\": True}"},{"line_number":559,"context_line":"            if retention !\u003d common.NO_SNAPSHOT_RETENTION and retention \u003e 0:"},{"line_number":560,"context_line":"                body[\u0027retentionPeriod\u0027] \u003d retention"},{"line_number":561,"context_line":"            self.client.add_snapshot(body)"},{"line_number":562,"context_line":"        except exception.VolumeDriverException as ex:"}],"source_content_type":"text/x-python","patch_set":4,"id":"a299c947_3c025387","line":559,"updated":"2026-04-18 11:15:58.000000000","message":"is logically redundant. Since NO_SNAPSHOT_RETENTION \u003d 0, the check simplifies to retention !\u003d 0 and retention \u003e 0, which is always equivalent to just retention \u003e 0. The first condition adds no value and could mislead a reader into thinking there is a meaningful distinction. if retention \u003e 0 is enough","commit_id":"4449e3b967e9f13af6a23b44073d063811a85738"},{"author":{"_account_id":38081,"name":"Anthony Galica","display_name":"agalica","email":"anthony.galica@hitachivantara.com","username":"agalica","status":"Hitachi Vantara"},"change_message_id":"bdfdcba5b5c111aff2f794a3750087e1af5e334c","unresolved":false,"context_lines":[{"line_number":556,"context_line":"                    \"autoSplit\": True,"},{"line_number":557,"context_line":"                    \"canCascade\": True,"},{"line_number":558,"context_line":"                    \"isDataReductionForceCopy\": True}"},{"line_number":559,"context_line":"            if retention !\u003d common.NO_SNAPSHOT_RETENTION and retention \u003e 0:"},{"line_number":560,"context_line":"                body[\u0027retentionPeriod\u0027] \u003d retention"},{"line_number":561,"context_line":"            self.client.add_snapshot(body)"},{"line_number":562,"context_line":"        except exception.VolumeDriverException as ex:"}],"source_content_type":"text/x-python","patch_set":4,"id":"7aab8de9_7dc1e7b3","line":559,"in_reply_to":"a299c947_3c025387","updated":"2026-04-20 15:10:20.000000000","message":"I agree that it\u0027s redundant. But I wrote it this way to make the code agnostic to the NO_SNAPSHOT_RETENTION value.  If, in theory we had to adjust this value (however unlikely) the code would continue to work.","commit_id":"4449e3b967e9f13af6a23b44073d063811a85738"}]}
