)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"3ae37be2eb5db82bfb54351a4344febaaf9a87cc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"891c30b4_77366762","updated":"2026-03-06 13:41:22.000000000","message":"No relasenotes added since existing one are correct and no change from end user point of view.","commit_id":"75a1d67858a6e8399da2c4ccf79c59f101552010"},{"author":{"_account_id":18816,"name":"Maurice Escher","display_name":"carthaca","email":"maurice.escher@sap.com","username":"mapocace"},"change_message_id":"8edf3bbeb1e3662e929ae6b88f18e4d32ffd8d3f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"6b09211f_707e296c","updated":"2026-03-09 09:49:22.000000000","message":"lgtm, you may fix the double \u0027set\u0027 in test name if you anyhow upload another patchset","commit_id":"75a1d67858a6e8399da2c4ccf79c59f101552010"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"7118bf759d696c9d905be77de589674b95e95a24","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"faa75c74_6545346c","in_reply_to":"891c30b4_77366762","updated":"2026-03-09 19:18:52.000000000","message":"Yeah, a new bug or a note isn\u0027t necessary since this landed in the Gazpacho release that we haven\u0027t shipped yet.","commit_id":"75a1d67858a6e8399da2c4ccf79c59f101552010"},{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"0ee50f2c024915a166920cef1d2f6eb3a35622f1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"3e4fc802_b28c18f1","updated":"2026-03-09 16:17:59.000000000","message":"Please look at the comments.","commit_id":"6c0afae02ecde53ce6280ce2834ef29728ab1702"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"1def1653f4f8bcb30a4f49ac46daffc17ee7a691","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"6d40a484_fc82ad21","updated":"2026-03-09 19:24:26.000000000","message":"Have you tested if you can enable all_squash and later disable all_squash with this logic? Will you need to reset the anon user ID when you disable?","commit_id":"2e5745048f273aeadcbb09e14bee6aaf91b1bf24"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"d401cf9f1dfd69e9f41d39255a87fad28ad877e9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"56b3c77f_948e9c1c","in_reply_to":"6d40a484_fc82ad21","updated":"2026-03-10 08:54:33.000000000","message":"the default setting\n~~~\n                             RO Access Rule: sys\n                             RW Access Rule: sys\nUser ID To Which Anonymous Users Are Mapped: 65534\n                   Superuser Security Types: sys\n               Honor SetUID Bits in SETATTR: true\n                  Allow Creation of Devices: true\n~~~\n\nAfter all_squash enabled via metadata\n~~~\n                             RO Access Rule: none\n                             RW Access Rule: none\nUser ID To Which Anonymous Users Are Mapped: 65534\n                   Superuser Security Types: none\n               Honor SetUID Bits in SETATTR: true\n                  Allow Creation of Devices: true\n\n~~~\nAfter all_squash disabled via metadata\n\n~~~\n                             RO Access Rule: sys\n                             RW Access Rule: sys\nUser ID To Which Anonymous Users Are Mapped: 65534\n                   Superuser Security Types: sys\n               Honor SetUID Bits in SETATTR: true\n                  Allow Creation of Devices: true\n\n~~~\n\nSo we ideally dont need to set user ID to \u002765534\u0027 since its default only. Still I did after suggestions from Anoop. So yes after disable we dont need to reset.","commit_id":"2e5745048f273aeadcbb09e14bee6aaf91b1bf24"},{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"cb1d33377b5ddc2d1eb22f6e2e79d38877ae32d2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"6608f7f9_db559a32","updated":"2026-03-11 11:42:58.000000000","message":"LGTM","commit_id":"ff08d9802b75a01780610a7516d0016bab9cdbf7"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"1fecaaea21823eca34c45dbab7aadd19aacd410b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"e5ac8c0a_845ab0eb","updated":"2026-03-11 18:51:47.000000000","message":"LGTM, thank you","commit_id":"ff08d9802b75a01780610a7516d0016bab9cdbf7"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"5a39a1c393b8012748209d2ce7368de1288ca5f4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"74441da4_c607954e","updated":"2026-03-11 20:31:01.000000000","message":"LGTM, thanks Kiran","commit_id":"ff08d9802b75a01780610a7516d0016bab9cdbf7"}],"manila/share/drivers/netapp/dataontap/client/client_cmode.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"1def1653f4f8bcb30a4f49ac46daffc17ee7a691","unresolved":true,"context_lines":[{"line_number":4380,"context_line":"            \u0027rw-rule\u0027: [],"},{"line_number":4381,"context_line":"            \u0027super-user-security\u0027: [],"},{"line_number":4382,"context_line":"        }"},{"line_number":4383,"context_line":"        if anon_user_id:"},{"line_number":4384,"context_line":"            api_args[\u0027anonymous-user-id\u0027] \u003d anon_user_id"},{"line_number":4385,"context_line":"        for am in auth_methods:"},{"line_number":4386,"context_line":"            api_args[\u0027ro-rule\u0027].append({\u0027security-flavor\u0027: am})"}],"source_content_type":"text/x-python","patch_set":3,"id":"a5b196b9_4b261f21","line":4383,"range":{"start_line":4383,"start_character":8,"end_line":4383,"end_character":24},"updated":"2026-03-09 19:24:26.000000000","message":"`if anon_user_id is not None:`\n\n\nanon_user_id shouldn\u0027t be 0 - that\u0027d be terrible, but, your check could be better if that\u0027s ever intended.","commit_id":"2e5745048f273aeadcbb09e14bee6aaf91b1bf24"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"d401cf9f1dfd69e9f41d39255a87fad28ad877e9","unresolved":false,"context_lines":[{"line_number":4380,"context_line":"            \u0027rw-rule\u0027: [],"},{"line_number":4381,"context_line":"            \u0027super-user-security\u0027: [],"},{"line_number":4382,"context_line":"        }"},{"line_number":4383,"context_line":"        if anon_user_id:"},{"line_number":4384,"context_line":"            api_args[\u0027anonymous-user-id\u0027] \u003d anon_user_id"},{"line_number":4385,"context_line":"        for am in auth_methods:"},{"line_number":4386,"context_line":"            api_args[\u0027ro-rule\u0027].append({\u0027security-flavor\u0027: am})"}],"source_content_type":"text/x-python","patch_set":3,"id":"0d62b79f_4aba8b86","line":4383,"range":{"start_line":4383,"start_character":8,"end_line":4383,"end_character":24},"in_reply_to":"a5b196b9_4b261f21","updated":"2026-03-10 08:54:33.000000000","message":"Done","commit_id":"2e5745048f273aeadcbb09e14bee6aaf91b1bf24"}],"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":"0ee50f2c024915a166920cef1d2f6eb3a35622f1","unresolved":true,"context_lines":[{"line_number":834,"context_line":"        body \u003d {\u0027nas.uid\u0027: 65534}"},{"line_number":835,"context_line":""},{"line_number":836,"context_line":"        try:"},{"line_number":837,"context_line":"            self.send_request(\u0027/storage/volumes/\u0027, \u0027patch\u0027, query\u003dquery,"},{"line_number":838,"context_line":"                              body\u003dbody)"},{"line_number":839,"context_line":"        except netapp_api.api.NaApiError as e:"},{"line_number":840,"context_line":"            if e.code \u003d\u003d netapp_api.EREST_CANNOT_MODITY_OFFLINE_VOLUME:"}],"source_content_type":"text/x-python","patch_set":2,"id":"c9ce9105_96fb7f24","line":837,"updated":"2026-03-09 16:17:59.000000000","message":"I see a leading slash in the url. I think its not required.","commit_id":"6c0afae02ecde53ce6280ce2834ef29728ab1702"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"9ad0faeb42094ba542592bc7e8893bc888dedf33","unresolved":false,"context_lines":[{"line_number":834,"context_line":"        body \u003d {\u0027nas.uid\u0027: 65534}"},{"line_number":835,"context_line":""},{"line_number":836,"context_line":"        try:"},{"line_number":837,"context_line":"            self.send_request(\u0027/storage/volumes/\u0027, \u0027patch\u0027, query\u003dquery,"},{"line_number":838,"context_line":"                              body\u003dbody)"},{"line_number":839,"context_line":"        except netapp_api.api.NaApiError as e:"},{"line_number":840,"context_line":"            if e.code \u003d\u003d netapp_api.EREST_CANNOT_MODITY_OFFLINE_VOLUME:"}],"source_content_type":"text/x-python","patch_set":2,"id":"6575e806_85e382e2","line":837,"in_reply_to":"c9ce9105_96fb7f24","updated":"2026-03-09 16:26:36.000000000","message":"Done","commit_id":"6c0afae02ecde53ce6280ce2834ef29728ab1702"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"1def1653f4f8bcb30a4f49ac46daffc17ee7a691","unresolved":true,"context_lines":[{"line_number":838,"context_line":"                              body\u003dbody)"},{"line_number":839,"context_line":"        except netapp_api.api.NaApiError as e:"},{"line_number":840,"context_line":"            if e.code \u003d\u003d netapp_api.EREST_CANNOT_MODITY_OFFLINE_VOLUME:"},{"line_number":841,"context_line":"                LOG.debug(\u0027Cannot modify offline volume: %s\u0027, volume_name)"},{"line_number":842,"context_line":"                return"},{"line_number":843,"context_line":""},{"line_number":844,"context_line":"    @na_utils.trace"}],"source_content_type":"text/x-python","patch_set":3,"id":"927f6b57_fc83f2c0","line":841,"range":{"start_line":841,"start_character":20,"end_line":841,"end_character":25},"updated":"2026-03-09 19:24:26.000000000","message":"warning?\n\n\nIs this a defensive check? Offline volumes can\u0027t be used.. should this be an error that you can bubble up to the end user?","commit_id":"2e5745048f273aeadcbb09e14bee6aaf91b1bf24"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"d401cf9f1dfd69e9f41d39255a87fad28ad877e9","unresolved":false,"context_lines":[{"line_number":838,"context_line":"                              body\u003dbody)"},{"line_number":839,"context_line":"        except netapp_api.api.NaApiError as e:"},{"line_number":840,"context_line":"            if e.code \u003d\u003d netapp_api.EREST_CANNOT_MODITY_OFFLINE_VOLUME:"},{"line_number":841,"context_line":"                LOG.debug(\u0027Cannot modify offline volume: %s\u0027, volume_name)"},{"line_number":842,"context_line":"                return"},{"line_number":843,"context_line":""},{"line_number":844,"context_line":"    @na_utils.trace"}],"source_content_type":"text/x-python","patch_set":3,"id":"08977586_51210bbb","line":841,"range":{"start_line":841,"start_character":20,"end_line":841,"end_character":25},"in_reply_to":"927f6b57_fc83f2c0","updated":"2026-03-10 08:54:33.000000000","message":"its copied from function above it which calls same API. It says error is ignored by ZAPI and so we are replicating the same. Did changed to warning though.","commit_id":"2e5745048f273aeadcbb09e14bee6aaf91b1bf24"}],"manila/share/drivers/netapp/dataontap/protocols/nfs_cmode.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":"0ee50f2c024915a166920cef1d2f6eb3a35622f1","unresolved":true,"context_lines":[{"line_number":121,"context_line":"        for address in addresses:"},{"line_number":122,"context_line":"            readonly \u003d self._is_readonly(new_rules[address])"},{"line_number":123,"context_line":"            if all_squash and not readonly:"},{"line_number":124,"context_line":"                self._client.add_nfs_export_rule("},{"line_number":125,"context_line":"                    temp_new_export_policy_name, address, False, [\u0027none\u0027])"},{"line_number":126,"context_line":"                set_volume_user_to_pcuser \u003d True"},{"line_number":127,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"bc7bc557_3145aef5","line":124,"updated":"2026-03-09 16:17:59.000000000","message":"ONTAP mandates to set anon user to 65534. I think we should explicitly set that in the new rule created for all_sqash.","commit_id":"6c0afae02ecde53ce6280ce2834ef29728ab1702"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"9ad0faeb42094ba542592bc7e8893bc888dedf33","unresolved":false,"context_lines":[{"line_number":121,"context_line":"        for address in addresses:"},{"line_number":122,"context_line":"            readonly \u003d self._is_readonly(new_rules[address])"},{"line_number":123,"context_line":"            if all_squash and not readonly:"},{"line_number":124,"context_line":"                self._client.add_nfs_export_rule("},{"line_number":125,"context_line":"                    temp_new_export_policy_name, address, False, [\u0027none\u0027])"},{"line_number":126,"context_line":"                set_volume_user_to_pcuser \u003d True"},{"line_number":127,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":2,"id":"c9925f4c_356d35ef","line":124,"in_reply_to":"bc7bc557_3145aef5","updated":"2026-03-09 16:26:36.000000000","message":"Done","commit_id":"6c0afae02ecde53ce6280ce2834ef29728ab1702"}],"manila/tests/share/drivers/netapp/dataontap/client/test_client_cmode.py":[{"author":{"_account_id":18816,"name":"Maurice Escher","display_name":"carthaca","email":"maurice.escher@sap.com","username":"mapocace"},"change_message_id":"8edf3bbeb1e3662e929ae6b88f18e4d32ffd8d3f","unresolved":true,"context_lines":[{"line_number":6178,"context_line":"        self.client.send_request.assert_has_calls(["},{"line_number":6179,"context_line":"            mock.call(\u0027volume-modify-iter\u0027, volume_modify_iter_args)])"},{"line_number":6180,"context_line":""},{"line_number":6181,"context_line":"    def test_set_set_pcuser_for_volume(self):"},{"line_number":6182,"context_line":""},{"line_number":6183,"context_line":"        api_response \u003d netapp_api.NaElement(fake.VOLUME_MODIFY_ITER_RESPONSE)"},{"line_number":6184,"context_line":"        self.mock_object(self.client,"}],"source_content_type":"text/x-python","patch_set":1,"id":"5a6080e8_3deabc9a","line":6181,"range":{"start_line":6181,"start_character":8,"end_line":6181,"end_character":38},"updated":"2026-03-09 09:49:22.000000000","message":"typo \u0027test_set_pcuser_for_volume\u0027","commit_id":"75a1d67858a6e8399da2c4ccf79c59f101552010"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"9ad0faeb42094ba542592bc7e8893bc888dedf33","unresolved":false,"context_lines":[{"line_number":6178,"context_line":"        self.client.send_request.assert_has_calls(["},{"line_number":6179,"context_line":"            mock.call(\u0027volume-modify-iter\u0027, volume_modify_iter_args)])"},{"line_number":6180,"context_line":""},{"line_number":6181,"context_line":"    def test_set_set_pcuser_for_volume(self):"},{"line_number":6182,"context_line":""},{"line_number":6183,"context_line":"        api_response \u003d netapp_api.NaElement(fake.VOLUME_MODIFY_ITER_RESPONSE)"},{"line_number":6184,"context_line":"        self.mock_object(self.client,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1f4541b8_873fd072","line":6181,"range":{"start_line":6181,"start_character":8,"end_line":6181,"end_character":38},"in_reply_to":"5a6080e8_3deabc9a","updated":"2026-03-09 16:26:36.000000000","message":"Done","commit_id":"75a1d67858a6e8399da2c4ccf79c59f101552010"}]}
