)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"307b2970bd673aa3de667249054bfd0353f3b7d7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"d98b0e14_1b8c53c4","updated":"2026-06-23 17:33:57.000000000","message":"Set Work In Progress","commit_id":"1f90f50823892cf1ff8c55908951102c769e4c73"},{"author":{"_account_id":38623,"name":"Sanketh Shetty","display_name":"Sanketh Shetty","email":"sanketh.shetty@netapp.com","username":"sanketh-netapp","status":"NetApp"},"change_message_id":"df27a172de2811f3fef92515afaae2fb80613348","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"990cda41_845cd4ed","updated":"2026-07-22 08:54:04.000000000","message":"Looks good.","commit_id":"104e1ea9aec31a12dce0706e266af95a987f7189"},{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"b84cd9afa483993aee1a09e448e00cb243ba8802","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"25402f0e_1dabd77f","updated":"2026-07-27 14:06:46.000000000","message":"LGTM.","commit_id":"9ed9e41a620bb8d0e38e811fdd20ee9e915e826d"},{"author":{"_account_id":38371,"name":"Kumar Tadepalli","display_name":"Kumar Tadepalli","email":"kumart.lead@gmail.com","username":"kumart","status":"NetApp"},"change_message_id":"5c9ff939045680d528413f5281180766277af91e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"f8e067d1_5e5d93c3","updated":"2026-07-27 05:29:25.000000000","message":"LGTM.","commit_id":"9ed9e41a620bb8d0e38e811fdd20ee9e915e826d"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c76b36403bcdc100a1c723e0cbea02a7c8e18bcd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"17dedff7_b515d504","updated":"2026-07-27 11:02:41.000000000","message":"recheck","commit_id":"9ed9e41a620bb8d0e38e811fdd20ee9e915e826d"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"535b0edc4fe89785937dee525f85eef17f9910cb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"4cb5d1ef_19e22a54","updated":"2026-07-26 10:41:06.000000000","message":"recheck","commit_id":"9ed9e41a620bb8d0e38e811fdd20ee9e915e826d"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"72c500199313e67f5f50b44034832684b0da86ec","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":20,"id":"4c1f7f8a_85827d03","updated":"2026-08-10 10:52:34.000000000","message":"recheck","commit_id":"151a78157d73d7e1db7d147e605f8cd34c0bc4b3"},{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"22db6c85eda7bb1c02235390f0b3981f3623766a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":21,"id":"02f50e0c_eab7def4","updated":"2026-08-17 14:23:59.000000000","message":"Thank you for working on this change. Structure looks correct, I will test this in a devstack environment.","commit_id":"6f5fa2487ed0eb92116dd8be10b2d43ec3e194d5"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"2ad42b0e16bd0d5083a7f59475739c6092f0578c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":21,"id":"c3912904_b5c0fbd6","updated":"2026-08-12 08:58:25.000000000","message":"recheck","commit_id":"6f5fa2487ed0eb92116dd8be10b2d43ec3e194d5"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f097b84585a05f1ad34e510b662d54d4c7d03822","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":23,"id":"63076f3c_036eb996","updated":"2026-08-23 19:26:33.000000000","message":"Thanks, ptal at the comments inline \n\nFunctionl tests are failing, maybe we have some excess resource consumption that we\u0027re not accounting for through default quotas?","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":18816,"name":"Maurice Escher","display_name":"carthaca","email":"maurice.escher@sap.com","username":"mapocace"},"change_message_id":"6e0386d4bbdaa74aaeefb15ce692927ccc863f2d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":24,"id":"89a98a3d_77e97a05","updated":"2026-08-25 09:36:25.000000000","message":"Hi, please fix Kiran\u0027s finding with the az parameter, it should accept both name and uuid and not silently send uuid to a non-existing param, that manila would drop.\n\nAnd see some remarks inline.","commit_id":"7742b4f221ff445b40343965e5c0733234a42869"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c5b09f4a834efcf02f633bfc73e0cff8e6f25575","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":24,"id":"1329a460_1568e871","updated":"2026-08-24 19:54:00.000000000","message":"Thanks @gouthampravi@gmail.com for your valuable review comments, please take a look and let me know if anything else need to fix. There is 2 open comment, need you input on those, based on your input will make the code changes.","commit_id":"7742b4f221ff445b40343965e5c0733234a42869"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"372bb55658fe9b0ad6392d3a5531c77b0a09af88","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":24,"id":"6c522e9f_24606a1a","updated":"2026-08-25 06:23:10.000000000","message":"recheck","commit_id":"7742b4f221ff445b40343965e5c0733234a42869"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"bf8722f9ac16f6e080b6d54317e4bbc9f1efff7d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"5486bbdb_179af002","updated":"2026-08-25 15:09:43.000000000","message":"Thanks @maurice.escher@sap.com and @kinpaa@gmail.com for review comments. I have incorporated those and fix the functional test also.","commit_id":"232d532554ca61d3c541d0957cd7670cc83e00fb"},{"author":{"_account_id":38371,"name":"Kumar Tadepalli","display_name":"Kumar Tadepalli","email":"kumart.lead@gmail.com","username":"kumart","status":"NetApp"},"change_message_id":"4c823343038e063ab34906440cb28be3d33a572e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":28,"id":"8ddbb7dc_e1c0e820","updated":"2026-08-26 12:03:09.000000000","message":"LGTM.","commit_id":"79e05e25e8bd5da275a593af506b55ac9ebeb7c1"},{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"64c01e34d26ffd031c0b230e126b2d60c2c3dbd9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":28,"id":"2308d2e2_ad8d087d","updated":"2026-08-26 14:29:51.000000000","message":"LGTM. I can +2 once we have other cores eyes :)","commit_id":"79e05e25e8bd5da275a593af506b55ac9ebeb7c1"},{"author":{"_account_id":38371,"name":"Kumar Tadepalli","display_name":"Kumar Tadepalli","email":"kumart.lead@gmail.com","username":"kumart","status":"NetApp"},"change_message_id":"ff7da66afd95b34ded936f3c9dc9ba5d733572f6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":29,"id":"69cc4f04_8086a9b5","updated":"2026-08-27 15:14:38.000000000","message":"LGTM","commit_id":"9d0dd8abcff6390dba2328db5508243c917e1e4e"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"83b771f1a8048dc81ced45f0fedb857e79d1c3fd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":29,"id":"50c0f8a8_1ab84163","updated":"2026-08-27 12:13:21.000000000","message":"Thanks @maurice.escher@sap.com for your review comment, I have incorporated the same, please take a look.","commit_id":"9d0dd8abcff6390dba2328db5508243c917e1e4e"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"b7c138ec90687ebc0e0648a4b8015ea0678be5fe","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":29,"id":"b1e49356_2474a6da","updated":"2026-08-27 12:24:09.000000000","message":"recheck","commit_id":"9d0dd8abcff6390dba2328db5508243c917e1e4e"}],"doc/source/contributor/functional-tests.rst":[{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"22db6c85eda7bb1c02235390f0b3981f3623766a","unresolved":true,"context_lines":[{"line_number":90,"context_line":"    MANILA_OPTGROUP_delta_driver_handles_share_servers\u003dFalse"},{"line_number":91,"context_line":"    MANILA_OPTGROUP_delta_share_backend_name\u003dDELTA"},{"line_number":92,"context_line":"    MANILA_OPTGROUP_delta_replication_domain\u003dDUMMY_DOMAIN"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"For share server replica functional tests, make sure at least two"},{"line_number":95,"context_line":"``driver_handles_share_servers\u003dTrue`` backends are available in different"},{"line_number":96,"context_line":"``backend_availability_zone`` values (for example ``az1`` and ``az2``), and"},{"line_number":97,"context_line":"that the backend pair is in the same replication domain."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"The share server replica tests create the source share server in the first"},{"line_number":100,"context_line":"availability zone and create the replica in the second availability zone,"},{"line_number":101,"context_line":"using share networks associated with each zone."},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    # membernet"},{"line_number":104,"context_line":"    MANILA_OPTGROUP_membernet_network_api_class\u003dmanila.network.standalone_network_plugin.StandaloneNetworkPlugin"},{"line_number":105,"context_line":"    MANILA_OPTGROUP_membernet_standalone_network_plugin_gateway\u003d10.0.0.1"}],"source_content_type":"text/x-rst","patch_set":21,"id":"57e20244_5b1957e2","line":102,"range":{"start_line":93,"start_character":1,"end_line":102,"end_character":1},"updated":"2026-08-17 14:23:59.000000000","message":"this is a snippet of a local.conf - if we don\u0027t add this as a comment we\u0027ll make the deployment fail.","commit_id":"6f5fa2487ed0eb92116dd8be10b2d43ec3e194d5"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"17cdccdfbad3c917e35a60c76720867c1b93dcc4","unresolved":false,"context_lines":[{"line_number":90,"context_line":"    MANILA_OPTGROUP_delta_driver_handles_share_servers\u003dFalse"},{"line_number":91,"context_line":"    MANILA_OPTGROUP_delta_share_backend_name\u003dDELTA"},{"line_number":92,"context_line":"    MANILA_OPTGROUP_delta_replication_domain\u003dDUMMY_DOMAIN"},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"For share server replica functional tests, make sure at least two"},{"line_number":95,"context_line":"``driver_handles_share_servers\u003dTrue`` backends are available in different"},{"line_number":96,"context_line":"``backend_availability_zone`` values (for example ``az1`` and ``az2``), and"},{"line_number":97,"context_line":"that the backend pair is in the same replication domain."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"The share server replica tests create the source share server in the first"},{"line_number":100,"context_line":"availability zone and create the replica in the second availability zone,"},{"line_number":101,"context_line":"using share networks associated with each zone."},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    # membernet"},{"line_number":104,"context_line":"    MANILA_OPTGROUP_membernet_network_api_class\u003dmanila.network.standalone_network_plugin.StandaloneNetworkPlugin"},{"line_number":105,"context_line":"    MANILA_OPTGROUP_membernet_standalone_network_plugin_gateway\u003d10.0.0.1"}],"source_content_type":"text/x-rst","patch_set":21,"id":"14c32963_83566c6b","line":102,"range":{"start_line":93,"start_character":1,"end_line":102,"end_character":1},"in_reply_to":"57e20244_5b1957e2","updated":"2026-08-23 17:11:43.000000000","message":"Done","commit_id":"6f5fa2487ed0eb92116dd8be10b2d43ec3e194d5"}],"manilaclient/api_versions.py":[{"author":{"_account_id":29632,"name":"Carlos Eduardo","email":"ces.eduardo98@gmail.com","username":"silvacarlos"},"change_message_id":"22db6c85eda7bb1c02235390f0b3981f3623766a","unresolved":true,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"MAX_VERSION \u003d \u00272.99\u0027"},{"line_number":33,"context_line":"MIN_VERSION \u003d \u00272.0\u0027"},{"line_number":34,"context_line":"DEPRECATED_VERSION \u003d \u00271.0\u0027"},{"line_number":35,"context_line":"_VERSIONED_METHOD_MAP \u003d {}"}],"source_content_type":"text/x-python","patch_set":21,"id":"601457fd_d8daae1e","line":32,"range":{"start_line":32,"start_character":15,"end_line":32,"end_character":19},"updated":"2026-08-17 14:23:59.000000000","message":"this change will be 2.100","commit_id":"6f5fa2487ed0eb92116dd8be10b2d43ec3e194d5"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"17cdccdfbad3c917e35a60c76720867c1b93dcc4","unresolved":false,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"MAX_VERSION \u003d \u00272.99\u0027"},{"line_number":33,"context_line":"MIN_VERSION \u003d \u00272.0\u0027"},{"line_number":34,"context_line":"DEPRECATED_VERSION \u003d \u00271.0\u0027"},{"line_number":35,"context_line":"_VERSIONED_METHOD_MAP \u003d {}"}],"source_content_type":"text/x-python","patch_set":21,"id":"505cc8b2_b9f457cd","line":32,"range":{"start_line":32,"start_character":15,"end_line":32,"end_character":19},"in_reply_to":"601457fd_d8daae1e","updated":"2026-08-23 17:11:43.000000000","message":"done","commit_id":"6f5fa2487ed0eb92116dd8be10b2d43ec3e194d5"}],"manilaclient/osc/v2/share_server_replicas.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f097b84585a05f1ad34e510b662d54d4c7d03822","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2026 OpenStack Foundation"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":23,"id":"26063ffe_16183614","line":1,"updated":"2026-08-23 19:26:33.000000000","message":"There\u0027s no such entity now, and the OpenInfra Foundation doesn\u0027t need this copy-right note. Please remove","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c5b09f4a834efcf02f633bfc73e0cff8e6f25575","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2026 OpenStack Foundation"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":23,"id":"7cc2c1b7_f377936f","line":1,"in_reply_to":"26063ffe_16183614","updated":"2026-08-24 19:54:00.000000000","message":"Done","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f097b84585a05f1ad34e510b662d54d4c7d03822","unresolved":true,"context_lines":[{"line_number":46,"context_line":"            action\u003dparseractions.KeyValueAction,"},{"line_number":47,"context_line":"            help\u003d_("},{"line_number":48,"context_line":"                \"Optional property as key\u003dvalue pair for the replica. \""},{"line_number":49,"context_line":"                \"(Default\u003dNone)\""},{"line_number":50,"context_line":"            ),"},{"line_number":51,"context_line":"        )"},{"line_number":52,"context_line":"        parser.add_argument("}],"source_content_type":"text/x-python","patch_set":23,"id":"e906aaaa_c473f9c3","line":49,"range":{"start_line":49,"start_character":30,"end_line":49,"end_character":31},"updated":"2026-08-23 19:26:33.000000000","message":"\"repeat option to set multiple properties\"","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c5b09f4a834efcf02f633bfc73e0cff8e6f25575","unresolved":false,"context_lines":[{"line_number":46,"context_line":"            action\u003dparseractions.KeyValueAction,"},{"line_number":47,"context_line":"            help\u003d_("},{"line_number":48,"context_line":"                \"Optional property as key\u003dvalue pair for the replica. \""},{"line_number":49,"context_line":"                \"(Default\u003dNone)\""},{"line_number":50,"context_line":"            ),"},{"line_number":51,"context_line":"        )"},{"line_number":52,"context_line":"        parser.add_argument("}],"source_content_type":"text/x-python","patch_set":23,"id":"2198d183_7c2c9050","line":49,"range":{"start_line":49,"start_character":30,"end_line":49,"end_character":31},"in_reply_to":"e906aaaa_c473f9c3","updated":"2026-08-24 19:54:00.000000000","message":"Added below - \nhelp\u003d_(\n                \"Set a property to this share server replica (repeat option \"\n                \"to set multiple properties). \"\n            ),","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f097b84585a05f1ad34e510b662d54d4c7d03822","unresolved":true,"context_lines":[{"line_number":100,"context_line":"            if not osc_utils.wait_for_status("},{"line_number":101,"context_line":"                status_f\u003dshare_client.share_server_replicas.get,"},{"line_number":102,"context_line":"                res_id\u003dreplica.id,"},{"line_number":103,"context_line":"                success_status\u003d[\"active\"],"},{"line_number":104,"context_line":"                status_field\u003d\"replica_state\","},{"line_number":105,"context_line":"            ):"},{"line_number":106,"context_line":"                LOG.error(_(\"ERROR: Share server replica is in error state.\"))"},{"line_number":107,"context_line":"            replica \u003d osc_utils.find_resource("}],"source_content_type":"text/x-python","patch_set":23,"id":"9a8f906c_b36485a9","line":104,"range":{"start_line":103,"start_character":16,"end_line":104,"end_character":45},"updated":"2026-08-23 19:26:33.000000000","message":"why wait for \"replica_state\" to be active? you could be waiting a long time? Why not just set this to the regular \"status\" so that we only wait until the server replica is created.\n\nAlso, isn\u0027t the \"replica_state\" for a secondary \"in_sync\" when it\u0027s in-sync with the active one?","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c5b09f4a834efcf02f633bfc73e0cff8e6f25575","unresolved":false,"context_lines":[{"line_number":100,"context_line":"            if not osc_utils.wait_for_status("},{"line_number":101,"context_line":"                status_f\u003dshare_client.share_server_replicas.get,"},{"line_number":102,"context_line":"                res_id\u003dreplica.id,"},{"line_number":103,"context_line":"                success_status\u003d[\"active\"],"},{"line_number":104,"context_line":"                status_field\u003d\"replica_state\","},{"line_number":105,"context_line":"            ):"},{"line_number":106,"context_line":"                LOG.error(_(\"ERROR: Share server replica is in error state.\"))"},{"line_number":107,"context_line":"            replica \u003d osc_utils.find_resource("}],"source_content_type":"text/x-python","patch_set":23,"id":"cc07ea08_47a70b7a","line":104,"range":{"start_line":103,"start_character":16,"end_line":104,"end_character":45},"in_reply_to":"9a8f906c_b36485a9","updated":"2026-08-24 19:54:00.000000000","message":"yes you are right, I wait till status is not become available. Make this same as share replica. Initially it will be in creating status and once got the success status from driver status will be change to \"available\".","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f097b84585a05f1ad34e510b662d54d4c7d03822","unresolved":true,"context_lines":[{"line_number":214,"context_line":"            \"replica_state\","},{"line_number":215,"context_line":"            \"host\","},{"line_number":216,"context_line":"            \"availability_zone\","},{"line_number":217,"context_line":"        ]"},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"        column_headers \u003d utils.format_column_headers(columns)"},{"line_number":220,"context_line":"        data \u003d ("}],"source_content_type":"text/x-python","patch_set":23,"id":"6936445b_7ad17428","line":217,"updated":"2026-08-23 19:26:33.000000000","message":"don\u0027t you want updated_at (and created_at)? these timestamp fields are useful for something where we track async updates","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c5b09f4a834efcf02f633bfc73e0cff8e6f25575","unresolved":false,"context_lines":[{"line_number":214,"context_line":"            \"replica_state\","},{"line_number":215,"context_line":"            \"host\","},{"line_number":216,"context_line":"            \"availability_zone\","},{"line_number":217,"context_line":"        ]"},{"line_number":218,"context_line":""},{"line_number":219,"context_line":"        column_headers \u003d utils.format_column_headers(columns)"},{"line_number":220,"context_line":"        data \u003d ("}],"source_content_type":"text/x-python","patch_set":23,"id":"6ed6323e_6fd105d3","line":217,"in_reply_to":"6936445b_7ad17428","updated":"2026-08-24 19:54:00.000000000","message":"This is added as part of show command. I don\u0027t think this field is good condidate for list\nos share server replica show a50b5421-860c-437f-beec-12e9eb1877c5\n+------------------------+--------------------------------------+\n| Field                  | Value                                |\n+------------------------+--------------------------------------+\n| id                     | a50b5421-860c-437f-beec-12e9eb1877c5 |\n| source_share_server_id | None                                 |\n| host                   | ostack-agireesh-30@ontap_cluster1    |\n| status                 | available                            |\n| replica_state          | active                               |\n| availability_zone      | NOVA_P                               |\n| created_at             | 2026-08-24T06:56:14.709042           |\n| updated_at             | 2026-08-24T17:43:27.294072           |\n| share_network_id       | 6b442400-b94a-4839-a137-f2cda2237322 |","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f097b84585a05f1ad34e510b662d54d4c7d03822","unresolved":true,"context_lines":[{"line_number":222,"context_line":"                dict("},{"line_number":223,"context_line":"                    replica._info,"},{"line_number":224,"context_line":"                    id\u003dreplica._info.get(\"id\"),"},{"line_number":225,"context_line":"                    source_share_server_id\u003d("},{"line_number":226,"context_line":"                        \"\""},{"line_number":227,"context_line":"                        if replica._info.get(\"replica_state\") \u003d\u003d \"active\""},{"line_number":228,"context_line":"                        else replica._info.get(\"source_share_server_id\")"},{"line_number":229,"context_line":"                    ),"},{"line_number":230,"context_line":"                ),"},{"line_number":231,"context_line":"                columns,"}],"source_content_type":"text/x-python","patch_set":23,"id":"7b1df9e2_a74b16c3","line":228,"range":{"start_line":225,"start_character":20,"end_line":228,"end_character":72},"updated":"2026-08-23 19:26:33.000000000","message":"can you explain why this is necessary?","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c5b09f4a834efcf02f633bfc73e0cff8e6f25575","unresolved":true,"context_lines":[{"line_number":222,"context_line":"                dict("},{"line_number":223,"context_line":"                    replica._info,"},{"line_number":224,"context_line":"                    id\u003dreplica._info.get(\"id\"),"},{"line_number":225,"context_line":"                    source_share_server_id\u003d("},{"line_number":226,"context_line":"                        \"\""},{"line_number":227,"context_line":"                        if replica._info.get(\"replica_state\") \u003d\u003d \"active\""},{"line_number":228,"context_line":"                        else replica._info.get(\"source_share_server_id\")"},{"line_number":229,"context_line":"                    ),"},{"line_number":230,"context_line":"                ),"},{"line_number":231,"context_line":"                columns,"}],"source_content_type":"text/x-python","patch_set":23,"id":"0667fa21_1452237e","line":228,"range":{"start_line":225,"start_character":20,"end_line":228,"end_character":72},"in_reply_to":"7b1df9e2_a74b16c3","updated":"2026-08-24 19:54:00.000000000","message":"source_share_server_id is returning None for active replica. I wanted to show this as empty instead of None in \"openstack share server replica command\", for that this logic is added.\n\nLet me know if you wanted to me remove this, in that case, CLI output will be as below.\nos share server replica list \n+-------------------------------+-------------------------------+-----------+---------------+---------------------------------+-------------------+\n| ID                            | Source Share Server ID        | Status    | Replica State | Host                            | Availability Zone |\n+-------------------------------+-------------------------------+-----------+---------------+---------------------------------+-------------------+\n| 8af43842-d8e1-483b-9c4a-      | a50b5421-860c-437f-beec-      | available | in_sync       | ostack-                         | NOVA_S            |\n| c8d567886d76                  | 12e9eb1877c5                  |           |               | agireesh-30@ontap_cluster2      |                   |\n| a50b5421-860c-437f-beec-      | None                          | available | active        | ostack-                         | NOVA_P            |\n| 12e9eb1877c5                  |                               |           |               | agireesh-30@ontap_cluster1      |                   |\n+-------------------------------+-------------------------------+-----------+---------------+---------------------------------+-------------------+\n\nIf we have this logic then CLI out put will be \nos share server replica list \n+-------------------------------+-------------------------------+-----------+---------------+---------------------------------+-------------------+\n| ID                            | Source Share Server ID        | Status    | Replica State | Host                            | Availability Zone |\n+-------------------------------+-------------------------------+-----------+---------------+---------------------------------+-------------------+\n| 8af43842-d8e1-483b-9c4a-      | a50b5421-860c-437f-beec-      | available | in_sync       | ostack-                         | NOVA_S            |\n| c8d567886d76                  | 12e9eb1877c5                  |           |               | agireesh-30@ontap_cluster2      |                   |\n| a50b5421-860c-437f-beec-      |                               | available | active        | ostack-                         | NOVA_P            |\n| 12e9eb1877c5                  |                               |           |               | agireesh-30@ontap_cluster1      |                   |\n+-------------------------------+-------------------------------+-----------+---------------+---------------------------------+-------------------+\n(.venv) stack@ostack-agireesh-30:~/python-manilaclient$","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f097b84585a05f1ad34e510b662d54d4c7d03822","unresolved":true,"context_lines":[{"line_number":263,"context_line":""},{"line_number":264,"context_line":"    _description \u003d _("},{"line_number":265,"context_line":"        \"Explicitly set the replica-state and/or status and/or property \""},{"line_number":266,"context_line":"        \"of a share server replica (Admin only)\""},{"line_number":267,"context_line":"    )"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"    def get_parser(self, prog_name):"}],"source_content_type":"text/x-python","patch_set":23,"id":"70e9668f_4aca0289","line":266,"range":{"start_line":266,"start_character":35,"end_line":266,"end_character":47},"updated":"2026-08-23 19:26:33.000000000","message":"every command in this set is \"Admin only\" -","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c5b09f4a834efcf02f633bfc73e0cff8e6f25575","unresolved":false,"context_lines":[{"line_number":263,"context_line":""},{"line_number":264,"context_line":"    _description \u003d _("},{"line_number":265,"context_line":"        \"Explicitly set the replica-state and/or status and/or property \""},{"line_number":266,"context_line":"        \"of a share server replica (Admin only)\""},{"line_number":267,"context_line":"    )"},{"line_number":268,"context_line":""},{"line_number":269,"context_line":"    def get_parser(self, prog_name):"}],"source_content_type":"text/x-python","patch_set":23,"id":"a72d0f26_a581042b","line":266,"range":{"start_line":266,"start_character":35,"end_line":266,"end_character":47},"in_reply_to":"70e9668f_4aca0289","updated":"2026-08-24 19:54:00.000000000","message":"Removed.","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f097b84585a05f1ad34e510b662d54d4c7d03822","unresolved":true,"context_lines":[{"line_number":292,"context_line":"                \"creating\","},{"line_number":293,"context_line":"                \"deleting\","},{"line_number":294,"context_line":"                \"error_deleting\","},{"line_number":295,"context_line":"                \"promoting\","},{"line_number":296,"context_line":"            ],"},{"line_number":297,"context_line":"            help\u003d_("},{"line_number":298,"context_line":"                \"Assign a status to the share server replica. \""}],"source_content_type":"text/x-python","patch_set":23,"id":"b04a8987_54477697","line":295,"range":{"start_line":295,"start_character":17,"end_line":295,"end_character":26},"updated":"2026-08-23 19:26:33.000000000","message":"we used \"replication_change\" for shares.. why not use the same?","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"83b771f1a8048dc81ced45f0fedb857e79d1c3fd","unresolved":false,"context_lines":[{"line_number":292,"context_line":"                \"creating\","},{"line_number":293,"context_line":"                \"deleting\","},{"line_number":294,"context_line":"                \"error_deleting\","},{"line_number":295,"context_line":"                \"promoting\","},{"line_number":296,"context_line":"            ],"},{"line_number":297,"context_line":"            help\u003d_("},{"line_number":298,"context_line":"                \"Assign a status to the share server replica. \""}],"source_content_type":"text/x-python","patch_set":23,"id":"514d996e_8a5c66a5","line":295,"range":{"start_line":295,"start_character":17,"end_line":295,"end_character":26},"in_reply_to":"5a38f84b_8c29b93b","updated":"2026-08-27 12:13:21.000000000","message":"Done, made the same changes in manila core als.","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c5b09f4a834efcf02f633bfc73e0cff8e6f25575","unresolved":true,"context_lines":[{"line_number":292,"context_line":"                \"creating\","},{"line_number":293,"context_line":"                \"deleting\","},{"line_number":294,"context_line":"                \"error_deleting\","},{"line_number":295,"context_line":"                \"promoting\","},{"line_number":296,"context_line":"            ],"},{"line_number":297,"context_line":"            help\u003d_("},{"line_number":298,"context_line":"                \"Assign a status to the share server replica. \""}],"source_content_type":"text/x-python","patch_set":23,"id":"5a38f84b_8c29b93b","line":295,"range":{"start_line":295,"start_character":17,"end_line":295,"end_character":26},"in_reply_to":"b04a8987_54477697","updated":"2026-08-24 19:54:00.000000000","message":"This first need to change from core, Manideep has added this, let us know if this need to change in core also.","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"22039861a3676a24835fcd53c473fec53e96963f","unresolved":true,"context_lines":[{"line_number":221,"context_line":"        properties \u003d parsed_args.property or {}"},{"line_number":222,"context_line":"        if properties:"},{"line_number":223,"context_line":"            if share_client.api_version \u003c api_versions.APIVersion(\"2.95\"):"},{"line_number":224,"context_line":"                raise exceptions.CommandError("},{"line_number":225,"context_line":"                    \"Property based filtering is only available \""},{"line_number":226,"context_line":"                    \"with manila API version \u003e\u003d 2.95\""},{"line_number":227,"context_line":"                )"}],"source_content_type":"text/x-python","patch_set":26,"id":"4fdaf87d_6b36ff11","line":224,"updated":"2026-08-26 06:06:47.000000000","message":"share server replica is new resource starting 2.100. Why its limited to 2.95 ?","commit_id":"599f6b522c0654b1d0fc412c2e2b7114c27570c5"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"80c6059337156793baadc1e8e0491b7deedb81a5","unresolved":false,"context_lines":[{"line_number":221,"context_line":"        properties \u003d parsed_args.property or {}"},{"line_number":222,"context_line":"        if properties:"},{"line_number":223,"context_line":"            if share_client.api_version \u003c api_versions.APIVersion(\"2.95\"):"},{"line_number":224,"context_line":"                raise exceptions.CommandError("},{"line_number":225,"context_line":"                    \"Property based filtering is only available \""},{"line_number":226,"context_line":"                    \"with manila API version \u003e\u003d 2.95\""},{"line_number":227,"context_line":"                )"}],"source_content_type":"text/x-python","patch_set":26,"id":"c72255fb_025cecba","line":224,"in_reply_to":"4fdaf87d_6b36ff11","updated":"2026-08-26 11:49:53.000000000","message":"this is mistake, fixed it","commit_id":"599f6b522c0654b1d0fc412c2e2b7114c27570c5"},{"author":{"_account_id":18816,"name":"Maurice Escher","display_name":"carthaca","email":"maurice.escher@sap.com","username":"mapocace"},"change_message_id":"b3749e59f0c64e926ba5a6bb60b5043f648ea765","unresolved":true,"context_lines":[{"line_number":229,"context_line":"        search_opts \u003d {}"},{"line_number":230,"context_line":"        if properties:"},{"line_number":231,"context_line":"            meta_str \u003d \",\".join(f\"{k}:{v}\" for k, v in properties.items())"},{"line_number":232,"context_line":"            search_opts[\u0027metadata\u0027] \u003d meta_str"},{"line_number":233,"context_line":""},{"line_number":234,"context_line":"        replicas \u003d share_client.share_server_replicas.list("},{"line_number":235,"context_line":"            share_server\u003dshare_server,"}],"source_content_type":"text/x-python","patch_set":28,"id":"32696737_0d57bd51","line":232,"updated":"2026-08-27 07:18:44.000000000","message":"This has not been implemented on server side (yet?).\n\nshare server replica list only supports the pagination filters, sorting and share_server_id","commit_id":"79e05e25e8bd5da275a593af506b55ac9ebeb7c1"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"83b771f1a8048dc81ced45f0fedb857e79d1c3fd","unresolved":false,"context_lines":[{"line_number":229,"context_line":"        search_opts \u003d {}"},{"line_number":230,"context_line":"        if properties:"},{"line_number":231,"context_line":"            meta_str \u003d \",\".join(f\"{k}:{v}\" for k, v in properties.items())"},{"line_number":232,"context_line":"            search_opts[\u0027metadata\u0027] \u003d meta_str"},{"line_number":233,"context_line":""},{"line_number":234,"context_line":"        replicas \u003d share_client.share_server_replicas.list("},{"line_number":235,"context_line":"            share_server\u003dshare_server,"}],"source_content_type":"text/x-python","patch_set":28,"id":"95b576f4_d9bf2873","line":232,"in_reply_to":"32696737_0d57bd51","updated":"2026-08-27 12:13:21.000000000","message":"Yes we don\u0027t have the filtering code in core side, removing this code. I just comparing the code with share server replica and added the same here but forgot that we don\u0027t have this support in core. thanks for pointing this.","commit_id":"79e05e25e8bd5da275a593af506b55ac9ebeb7c1"}],"manilaclient/tests/functional/osc/test_share_server_replicas.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f097b84585a05f1ad34e510b662d54d4c7d03822","unresolved":true,"context_lines":[{"line_number":10,"context_line":"#   License for the specific language governing permissions and limitations"},{"line_number":11,"context_line":"#   under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"from manilaclient import config"},{"line_number":14,"context_line":"from manilaclient.tests.functional.osc import base"},{"line_number":15,"context_line":"from manilaclient.tests.functional import utils"},{"line_number":16,"context_line":"from tempest.lib.common.utils import data_utils"},{"line_number":17,"context_line":"from tempest.lib import exceptions as tempest_exc"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"CONF \u003d config.CONF"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"875fb2a2_8027bd4f","line":17,"range":{"start_line":13,"start_character":0,"end_line":17,"end_character":49},"updated":"2026-08-23 19:26:33.000000000","message":"adhere to the import order template: https://docs.openstack.org/hacking/latest/user/hacking.html#import-order-template","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c5b09f4a834efcf02f633bfc73e0cff8e6f25575","unresolved":false,"context_lines":[{"line_number":10,"context_line":"#   License for the specific language governing permissions and limitations"},{"line_number":11,"context_line":"#   under the License."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"from manilaclient import config"},{"line_number":14,"context_line":"from manilaclient.tests.functional.osc import base"},{"line_number":15,"context_line":"from manilaclient.tests.functional import utils"},{"line_number":16,"context_line":"from tempest.lib.common.utils import data_utils"},{"line_number":17,"context_line":"from tempest.lib import exceptions as tempest_exc"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"CONF \u003d config.CONF"},{"line_number":20,"context_line":""}],"source_content_type":"text/x-python","patch_set":23,"id":"80854358_f4a6d1bd","line":17,"range":{"start_line":13,"start_character":0,"end_line":17,"end_character":49},"in_reply_to":"875fb2a2_8027bd4f","updated":"2026-08-24 19:54:00.000000000","message":"Done","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"}],"manilaclient/tests/unit/osc/v2/test_quotas.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f097b84585a05f1ad34e510b662d54d4c7d03822","unresolved":true,"context_lines":[{"line_number":367,"context_line":""},{"line_number":368,"context_line":"    def test_quota_set_share_server_replicas_exception(self):"},{"line_number":369,"context_line":"        self.app.client_manager.share.api_version \u003d api_versions.APIVersion("},{"line_number":370,"context_line":"            \u00272.98\u0027"},{"line_number":371,"context_line":"        )"},{"line_number":372,"context_line":"        arglist \u003d ["},{"line_number":373,"context_line":"            self.project.id,"}],"source_content_type":"text/x-python","patch_set":23,"id":"fefda5ff_3666b91f","line":370,"range":{"start_line":370,"start_character":13,"end_line":370,"end_character":17},"updated":"2026-08-23 19:26:33.000000000","message":"2.99 perhaps, for proper boundary","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c5b09f4a834efcf02f633bfc73e0cff8e6f25575","unresolved":false,"context_lines":[{"line_number":367,"context_line":""},{"line_number":368,"context_line":"    def test_quota_set_share_server_replicas_exception(self):"},{"line_number":369,"context_line":"        self.app.client_manager.share.api_version \u003d api_versions.APIVersion("},{"line_number":370,"context_line":"            \u00272.98\u0027"},{"line_number":371,"context_line":"        )"},{"line_number":372,"context_line":"        arglist \u003d ["},{"line_number":373,"context_line":"            self.project.id,"}],"source_content_type":"text/x-python","patch_set":23,"id":"79360d59_40b7777d","line":370,"range":{"start_line":370,"start_character":13,"end_line":370,"end_character":17},"in_reply_to":"fefda5ff_3666b91f","updated":"2026-08-24 19:54:00.000000000","message":"Done","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"}],"manilaclient/tests/unit/v2/test_share_server_replicas.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f097b84585a05f1ad34e510b662d54d4c7d03822","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2026 OpenStack Foundation"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":5,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":23,"id":"207ea34d_0a958a2a","line":2,"range":{"start_line":1,"start_character":0,"end_line":2,"end_character":22},"updated":"2026-08-23 19:26:33.000000000","message":"please remove","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c5b09f4a834efcf02f633bfc73e0cff8e6f25575","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2026 OpenStack Foundation"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":5,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":23,"id":"eb0fbbe3_e9227169","line":2,"range":{"start_line":1,"start_character":0,"end_line":2,"end_character":22},"in_reply_to":"207ea34d_0a958a2a","updated":"2026-08-24 19:54:00.000000000","message":"Done","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"}],"manilaclient/v2/quotas.py":[{"author":{"_account_id":18816,"name":"Maurice Escher","display_name":"carthaca","email":"maurice.escher@sap.com","username":"mapocace"},"change_message_id":"6e0386d4bbdaa74aaeefb15ce692927ccc863f2d","unresolved":true,"context_lines":[{"line_number":344,"context_line":"            resource_path\u003dRESOURCE_PATH,"},{"line_number":345,"context_line":"        )"},{"line_number":346,"context_line":""},{"line_number":347,"context_line":"    @api_versions.wraps(\"2.90\", \"2.98\")  # noqa"},{"line_number":348,"context_line":"    def update(  # noqa"},{"line_number":349,"context_line":"        self,"},{"line_number":350,"context_line":"        tenant_id,"}],"source_content_type":"text/x-python","patch_set":24,"id":"a1252318_56924995","line":347,"updated":"2026-08-25 09:36:25.000000000","message":"```suggestion\n    @api_versions.wraps(\"2.90\", \"2.99\")  # noqa\n```","commit_id":"7742b4f221ff445b40343965e5c0733234a42869"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"bf8722f9ac16f6e080b6d54317e4bbc9f1efff7d","unresolved":false,"context_lines":[{"line_number":344,"context_line":"            resource_path\u003dRESOURCE_PATH,"},{"line_number":345,"context_line":"        )"},{"line_number":346,"context_line":""},{"line_number":347,"context_line":"    @api_versions.wraps(\"2.90\", \"2.98\")  # noqa"},{"line_number":348,"context_line":"    def update(  # noqa"},{"line_number":349,"context_line":"        self,"},{"line_number":350,"context_line":"        tenant_id,"}],"source_content_type":"text/x-python","patch_set":24,"id":"bd78fb8e_afe4ea19","line":347,"in_reply_to":"a1252318_56924995","updated":"2026-08-25 15:09:43.000000000","message":"Done","commit_id":"7742b4f221ff445b40343965e5c0733234a42869"}],"manilaclient/v2/share_server_replicas.py":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f097b84585a05f1ad34e510b662d54d4c7d03822","unresolved":true,"context_lines":[{"line_number":1,"context_line":"# Copyright 2026 OpenStack Foundation"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":23,"id":"0077816f_62611923","line":1,"updated":"2026-08-23 19:26:33.000000000","message":"please remove","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c5b09f4a834efcf02f633bfc73e0cff8e6f25575","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# Copyright 2026 OpenStack Foundation"},{"line_number":2,"context_line":"# All Rights Reserved."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"text/x-python","patch_set":23,"id":"a0383ac5_2a3724a4","line":1,"in_reply_to":"0077816f_62611923","updated":"2026-08-24 19:54:00.000000000","message":"Done","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"f097b84585a05f1ad34e510b662d54d4c7d03822","unresolved":true,"context_lines":[{"line_number":111,"context_line":"            availability_zone_value \u003d base.getid(availability_zone)"},{"line_number":112,"context_line":"            # Try to detect if it\u0027s a UUID or a name"},{"line_number":113,"context_line":"            # UUIDs are 36 chars with dashes, names are typically shorter"},{"line_number":114,"context_line":"            if len(str(availability_zone_value)) \u003d\u003d 36 and \u0027-\u0027 in str("},{"line_number":115,"context_line":"                availability_zone_value"},{"line_number":116,"context_line":"            ):"},{"line_number":117,"context_line":"                # Looks like a UUID, pass as availability_zone_id"},{"line_number":118,"context_line":"                body[\u0027availability_zone_id\u0027] \u003d availability_zone_value"},{"line_number":119,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":23,"id":"69afcfd5_d9631975","line":116,"range":{"start_line":114,"start_character":12,"end_line":116,"end_character":14},"updated":"2026-08-23 19:26:33.000000000","message":"use `if uuidutils.is_uuid_like(availability_zone_value):`","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"c5b09f4a834efcf02f633bfc73e0cff8e6f25575","unresolved":false,"context_lines":[{"line_number":111,"context_line":"            availability_zone_value \u003d base.getid(availability_zone)"},{"line_number":112,"context_line":"            # Try to detect if it\u0027s a UUID or a name"},{"line_number":113,"context_line":"            # UUIDs are 36 chars with dashes, names are typically shorter"},{"line_number":114,"context_line":"            if len(str(availability_zone_value)) \u003d\u003d 36 and \u0027-\u0027 in str("},{"line_number":115,"context_line":"                availability_zone_value"},{"line_number":116,"context_line":"            ):"},{"line_number":117,"context_line":"                # Looks like a UUID, pass as availability_zone_id"},{"line_number":118,"context_line":"                body[\u0027availability_zone_id\u0027] \u003d availability_zone_value"},{"line_number":119,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":23,"id":"649ba469_997e28ed","line":116,"range":{"start_line":114,"start_character":12,"end_line":116,"end_character":14},"in_reply_to":"69afcfd5_d9631975","updated":"2026-08-24 19:54:00.000000000","message":"Done","commit_id":"61771f70aa58d336d386c01c681ce5beffa1429f"},{"author":{"_account_id":32919,"name":"kiran pawar","display_name":"Kiran Pawar","email":"kinpaa@gmail.com","username":"kpdev"},"change_message_id":"05c15a98f233b84043a9a0584aa2e23acb889588","unresolved":true,"context_lines":[{"line_number":112,"context_line":"            # UUIDs are 36 chars with dashes, names are typically shorter"},{"line_number":113,"context_line":"            if uuidutils.is_uuid_like(availability_zone_value):"},{"line_number":114,"context_line":"                # Looks like a UUID, pass as availability_zone_id"},{"line_number":115,"context_line":"                body[\u0027availability_zone_id\u0027] \u003d availability_zone_value"},{"line_number":116,"context_line":"            else:"},{"line_number":117,"context_line":"                # Looks like a name, pass as availability_zone"},{"line_number":118,"context_line":"                body[\u0027availability_zone\u0027] \u003d availability_zone_value"}],"source_content_type":"text/x-python","patch_set":24,"id":"b48ab8f7_65763b4b","line":115,"updated":"2026-08-25 05:46:09.000000000","message":"if availability_zone:\n            body[\u0027availability_zone\u0027] \u003d base.getid(availability_zone)\n\n\nLet user specify availability_zone, it can be name or UUID. Also change API at Manila if its accepting both zone and zone_id.","commit_id":"7742b4f221ff445b40343965e5c0733234a42869"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"bf8722f9ac16f6e080b6d54317e4bbc9f1efff7d","unresolved":false,"context_lines":[{"line_number":112,"context_line":"            # UUIDs are 36 chars with dashes, names are typically shorter"},{"line_number":113,"context_line":"            if uuidutils.is_uuid_like(availability_zone_value):"},{"line_number":114,"context_line":"                # Looks like a UUID, pass as availability_zone_id"},{"line_number":115,"context_line":"                body[\u0027availability_zone_id\u0027] \u003d availability_zone_value"},{"line_number":116,"context_line":"            else:"},{"line_number":117,"context_line":"                # Looks like a name, pass as availability_zone"},{"line_number":118,"context_line":"                body[\u0027availability_zone\u0027] \u003d availability_zone_value"}],"source_content_type":"text/x-python","patch_set":24,"id":"a3fc4abe_2cae905a","line":115,"in_reply_to":"b48ab8f7_65763b4b","updated":"2026-08-25 15:09:43.000000000","message":"Done","commit_id":"7742b4f221ff445b40343965e5c0733234a42869"},{"author":{"_account_id":18816,"name":"Maurice Escher","display_name":"carthaca","email":"maurice.escher@sap.com","username":"mapocace"},"change_message_id":"6e0386d4bbdaa74aaeefb15ce692927ccc863f2d","unresolved":true,"context_lines":[{"line_number":182,"context_line":"        return self._action(\u0027reset_status\u0027, replica, {\u0027status\u0027: status})"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":"    @api_versions.wraps(constants.SHARE_SERVER_REPLICA_VERSION)"},{"line_number":185,"context_line":"    def update(self, replica, **kwargs):"},{"line_number":186,"context_line":"        \"\"\"Update a share server replica."},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"        :param replica: either replica object or its UUID."}],"source_content_type":"text/x-python","patch_set":24,"id":"adff6fa3_1bd17d7e","line":185,"updated":"2026-08-25 09:36:25.000000000","message":"nit: method can be removed, there are no updatable fields (status and replica_state are covered by actions)","commit_id":"7742b4f221ff445b40343965e5c0733234a42869"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"bf8722f9ac16f6e080b6d54317e4bbc9f1efff7d","unresolved":false,"context_lines":[{"line_number":182,"context_line":"        return self._action(\u0027reset_status\u0027, replica, {\u0027status\u0027: status})"},{"line_number":183,"context_line":""},{"line_number":184,"context_line":"    @api_versions.wraps(constants.SHARE_SERVER_REPLICA_VERSION)"},{"line_number":185,"context_line":"    def update(self, replica, **kwargs):"},{"line_number":186,"context_line":"        \"\"\"Update a share server replica."},{"line_number":187,"context_line":""},{"line_number":188,"context_line":"        :param replica: either replica object or its UUID."}],"source_content_type":"text/x-python","patch_set":24,"id":"9d33b599_5b303f2f","line":185,"in_reply_to":"adff6fa3_1bd17d7e","updated":"2026-08-25 15:09:43.000000000","message":"ohh, yes. thanks to point this.","commit_id":"7742b4f221ff445b40343965e5c0733234a42869"}],"releasenotes/notes/add-share-server-replica-support-4a60b85d9f3e8bca.yaml":[{"author":{"_account_id":18816,"name":"Maurice Escher","display_name":"carthaca","email":"maurice.escher@sap.com","username":"mapocace"},"change_message_id":"6e0386d4bbdaa74aaeefb15ce692927ccc863f2d","unresolved":true,"context_lines":[{"line_number":11,"context_line":"    * ``openstack share server replica show`` - Display share server replica details"},{"line_number":12,"context_line":"    * ``openstack share server replica promote`` - Promote a replica to primary"},{"line_number":13,"context_line":"    * ``openstack share server replica set`` - Set share server replica properties"},{"line_number":14,"context_line":"    * ``openstack share server replica unset`` - Unset share server replica properties"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"    Additionally, the underlying client library now provides full API support for"},{"line_number":17,"context_line":"    share server replica management operations including metadata management"}],"source_content_type":"text/x-yaml","patch_set":24,"id":"c7a11a81_8a7e0eb7","line":14,"updated":"2026-08-25 09:36:25.000000000","message":"nit: add resync","commit_id":"7742b4f221ff445b40343965e5c0733234a42869"},{"author":{"_account_id":36180,"name":"Gireesh Awasthi","display_name":"Gireesh","email":"gawasthi2010@gmail.com","username":"agireesh","status":"NetApp"},"change_message_id":"bf8722f9ac16f6e080b6d54317e4bbc9f1efff7d","unresolved":false,"context_lines":[{"line_number":11,"context_line":"    * ``openstack share server replica show`` - Display share server replica details"},{"line_number":12,"context_line":"    * ``openstack share server replica promote`` - Promote a replica to primary"},{"line_number":13,"context_line":"    * ``openstack share server replica set`` - Set share server replica properties"},{"line_number":14,"context_line":"    * ``openstack share server replica unset`` - Unset share server replica properties"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"    Additionally, the underlying client library now provides full API support for"},{"line_number":17,"context_line":"    share server replica management operations including metadata management"}],"source_content_type":"text/x-yaml","patch_set":24,"id":"54a1d650_85a6b877","line":14,"in_reply_to":"c7a11a81_8a7e0eb7","updated":"2026-08-25 15:09:43.000000000","message":"Done","commit_id":"7742b4f221ff445b40343965e5c0733234a42869"}]}
