)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"e5668a07a3703fa9ddb17c89c03306c5c433671a","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     jayaanand borra \u003cjayaanand.borra@netapp.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2024-11-28 04:54:39 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NVMe namespace mapping fails during VM migration with"},{"line_number":8,"context_line":"\"Namespace is already mapped to subsystem\""},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"Closes-bug: #2078968"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"a69a2342_3877ddc7","line":7,"range":{"start_line":7,"start_character":28,"end_line":7,"end_character":29},"updated":"2024-12-19 19:45:45.000000000","message":"Please update accordingly https://wiki.openstack.org/wiki/GitCommitMessages#Summary_of_Git_commit_message_structure","commit_id":"ecc09c5bb651c0137e95f0a27356d77a38a17918"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"f4d0ddb5774389186cd6a39aa755622dc85c93a1","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     jayaanand borra \u003cjayaanand.borra@netapp.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2024-11-28 04:54:39 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NVMe namespace mapping fails during VM migration with"},{"line_number":8,"context_line":"\"Namespace is already mapped to subsystem\""},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"Closes-bug: #2078968"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"b3d65112_5f294296","line":7,"range":{"start_line":7,"start_character":28,"end_line":7,"end_character":29},"in_reply_to":"a69a2342_3877ddc7","updated":"2025-04-01 17:54:48.000000000","message":"Thank you! detailed approach message is added now.","commit_id":"ecc09c5bb651c0137e95f0a27356d77a38a17918"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"89743a0e8ce6f28e27f5c5b3c543570000384f28","unresolved":true,"context_lines":[{"line_number":3,"context_line":"AuthorDate: 2024-09-07 12:57:13 -0400"},{"line_number":4,"context_line":"Commit:     jayaanand borra \u003cjayaanand.borra@netapp.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2025-03-06 19:20:09 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NVMe namespace mapping fails during VM migration with"},{"line_number":8,"context_line":"\"Namespace is already mapped to subsystem\""},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"Closes-bug: #2078968"},{"line_number":11,"context_line":"Change-Id: I90b9d74560f128e495b6ccecea2d3aa2ed68171f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"d0b0682b_97eca3e8","line":8,"range":{"start_line":6,"start_character":0,"end_line":8,"end_character":42},"updated":"2025-03-07 07:37:34.000000000","message":"make the commit line smaller and try to add a more verbose description of how are we fixing the issue.","commit_id":"8bba04242de163bd9d2d8a0a3c1c22dbd1075881"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"f4d0ddb5774389186cd6a39aa755622dc85c93a1","unresolved":false,"context_lines":[{"line_number":3,"context_line":"AuthorDate: 2024-09-07 12:57:13 -0400"},{"line_number":4,"context_line":"Commit:     jayaanand borra \u003cjayaanand.borra@netapp.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2025-03-06 19:20:09 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NVMe namespace mapping fails during VM migration with"},{"line_number":8,"context_line":"\"Namespace is already mapped to subsystem\""},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"Closes-bug: #2078968"},{"line_number":11,"context_line":"Change-Id: I90b9d74560f128e495b6ccecea2d3aa2ed68171f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"48aa8e9e_11bb7031","line":8,"range":{"start_line":6,"start_character":0,"end_line":8,"end_character":42},"in_reply_to":"d0b0682b_97eca3e8","updated":"2025-04-01 17:54:48.000000000","message":"Thank you! Detailed approach is added.","commit_id":"8bba04242de163bd9d2d8a0a3c1c22dbd1075881"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"f57bd07e00e09d4d5288b7839f72ed9dd57ea058","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NVMe namespace mapping fails during VM live migration"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When new NVMe volume is created new susbsystem is"},{"line_number":10,"context_line":"created and mapped to created namespace."},{"line_number":11,"context_line":"This appraoch limits NVMe multi attach workflow"},{"line_number":12,"context_line":"which is required for Live migration and other"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"4bf6bbbe_2e75f4ca","line":9,"range":{"start_line":9,"start_character":36,"end_line":9,"end_character":46},"updated":"2025-06-26 17:50:37.000000000","message":"s/susbsystem/subsystem","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"37a1e0bd059183fecdacccc53fcb9cc9206c23e8","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NVMe namespace mapping fails during VM live migration"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When new NVMe volume is created new susbsystem is"},{"line_number":10,"context_line":"created and mapped to created namespace."},{"line_number":11,"context_line":"This appraoch limits NVMe multi attach workflow"},{"line_number":12,"context_line":"which is required for Live migration and other"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"a7bd8dce_323b5765","line":9,"range":{"start_line":9,"start_character":36,"end_line":9,"end_character":46},"in_reply_to":"4bf6bbbe_2e75f4ca","updated":"2025-07-03 15:55:52.000000000","message":"Done","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"f57bd07e00e09d4d5288b7839f72ed9dd57ea058","unresolved":true,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When new NVMe volume is created new susbsystem is"},{"line_number":10,"context_line":"created and mapped to created namespace."},{"line_number":11,"context_line":"This appraoch limits NVMe multi attach workflow"},{"line_number":12,"context_line":"which is required for Live migration and other"},{"line_number":13,"context_line":"multi attach workflows. To overcome this limitation."},{"line_number":14,"context_line":"and limitation from ONTAP have single subsystem can"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"960f236e_1dfcccd7","line":11,"range":{"start_line":11,"start_character":5,"end_line":11,"end_character":13},"updated":"2025-06-26 17:50:37.000000000","message":"s/appraoch/approach/","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"37a1e0bd059183fecdacccc53fcb9cc9206c23e8","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When new NVMe volume is created new susbsystem is"},{"line_number":10,"context_line":"created and mapped to created namespace."},{"line_number":11,"context_line":"This appraoch limits NVMe multi attach workflow"},{"line_number":12,"context_line":"which is required for Live migration and other"},{"line_number":13,"context_line":"multi attach workflows. To overcome this limitation."},{"line_number":14,"context_line":"and limitation from ONTAP have single subsystem can"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"c6e79322_d60666db","line":11,"range":{"start_line":11,"start_character":5,"end_line":11,"end_character":13},"in_reply_to":"960f236e_1dfcccd7","updated":"2025-07-03 15:55:52.000000000","message":"Done","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"f57bd07e00e09d4d5288b7839f72ed9dd57ea058","unresolved":true,"context_lines":[{"line_number":14,"context_line":"and limitation from ONTAP have single subsystem can"},{"line_number":15,"context_line":"map to single namespace. To elaborate we can\u0027t map"},{"line_number":16,"context_line":"multiple subsystems to single namespace. This is"},{"line_number":17,"context_line":"contrary to ISCSi whare multiple iGroups and allowed"},{"line_number":18,"context_line":"to map to single LUN. To overcome these limitations."},{"line_number":19,"context_line":"workflow is changed to have multiple hosts mapped to"},{"line_number":20,"context_line":"single subsystem and have single subsystem to"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"dab32a12_c992e421","line":17,"range":{"start_line":17,"start_character":12,"end_line":17,"end_character":17},"updated":"2025-06-26 17:50:37.000000000","message":"s/ISCSi/iSCSI","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"37a1e0bd059183fecdacccc53fcb9cc9206c23e8","unresolved":false,"context_lines":[{"line_number":14,"context_line":"and limitation from ONTAP have single subsystem can"},{"line_number":15,"context_line":"map to single namespace. To elaborate we can\u0027t map"},{"line_number":16,"context_line":"multiple subsystems to single namespace. This is"},{"line_number":17,"context_line":"contrary to ISCSi whare multiple iGroups and allowed"},{"line_number":18,"context_line":"to map to single LUN. To overcome these limitations."},{"line_number":19,"context_line":"workflow is changed to have multiple hosts mapped to"},{"line_number":20,"context_line":"single subsystem and have single subsystem to"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":14,"id":"518dd233_3213cf33","line":17,"range":{"start_line":17,"start_character":12,"end_line":17,"end_character":17},"in_reply_to":"dab32a12_c992e421","updated":"2025-07-03 15:55:52.000000000","message":"Done","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"c8a7da01393898b1313f0bd09b2a6041df38d4ca","unresolved":true,"context_lines":[{"line_number":10,"context_line":"created and mapped to created namespace."},{"line_number":11,"context_line":"This approach limits NVMe multi attach workflow"},{"line_number":12,"context_line":"which is required for Live migration and other"},{"line_number":13,"context_line":"multi attach workflows. To overcome this limitation."},{"line_number":14,"context_line":"and limitation from ONTAP have single subsystem can"},{"line_number":15,"context_line":"map to single namespace. To elaborate we can\u0027t map"},{"line_number":16,"context_line":"multiple subsystems to single namespace. This is"},{"line_number":17,"context_line":"contrary to iSCSI whare multiple iGroups and allowed"},{"line_number":18,"context_line":"to map to single LUN. To overcome these limitations."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":22,"id":"72796760_e95eaf21","line":15,"range":{"start_line":13,"start_character":24,"end_line":15,"end_character":24},"updated":"2025-07-16 16:39:00.000000000","message":"Neither of these are complete sentences, so I don\u0027t understand what you\u0027re trying to convey.","commit_id":"a1c19e55cb2f02a7da87312fc26efc2d99a23bce"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"5edd8607ce7e5eb0fef89e92d9577e7d7084491f","unresolved":false,"context_lines":[{"line_number":10,"context_line":"created and mapped to created namespace."},{"line_number":11,"context_line":"This approach limits NVMe multi attach workflow"},{"line_number":12,"context_line":"which is required for Live migration and other"},{"line_number":13,"context_line":"multi attach workflows. To overcome this limitation."},{"line_number":14,"context_line":"and limitation from ONTAP have single subsystem can"},{"line_number":15,"context_line":"map to single namespace. To elaborate we can\u0027t map"},{"line_number":16,"context_line":"multiple subsystems to single namespace. This is"},{"line_number":17,"context_line":"contrary to iSCSI whare multiple iGroups and allowed"},{"line_number":18,"context_line":"to map to single LUN. To overcome these limitations."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":22,"id":"d7ac56f9_219c4691","line":15,"range":{"start_line":13,"start_character":24,"end_line":15,"end_character":24},"in_reply_to":"72796760_e95eaf21","updated":"2025-07-31 17:04:23.000000000","message":"Thank you Alan, Updated sentences to provide context.","commit_id":"a1c19e55cb2f02a7da87312fc26efc2d99a23bce"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"c8a7da01393898b1313f0bd09b2a6041df38d4ca","unresolved":true,"context_lines":[{"line_number":14,"context_line":"and limitation from ONTAP have single subsystem can"},{"line_number":15,"context_line":"map to single namespace. To elaborate we can\u0027t map"},{"line_number":16,"context_line":"multiple subsystems to single namespace. This is"},{"line_number":17,"context_line":"contrary to iSCSI whare multiple iGroups and allowed"},{"line_number":18,"context_line":"to map to single LUN. To overcome these limitations."},{"line_number":19,"context_line":"workflow is changed to have multiple hosts mapped to"},{"line_number":20,"context_line":"single subsystem and have single subsystem to"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":22,"id":"876068ae_0e42d727","line":17,"range":{"start_line":17,"start_character":18,"end_line":17,"end_character":23},"updated":"2025-07-16 16:39:00.000000000","message":"\"where\"","commit_id":"a1c19e55cb2f02a7da87312fc26efc2d99a23bce"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"c8a7da01393898b1313f0bd09b2a6041df38d4ca","unresolved":true,"context_lines":[{"line_number":14,"context_line":"and limitation from ONTAP have single subsystem can"},{"line_number":15,"context_line":"map to single namespace. To elaborate we can\u0027t map"},{"line_number":16,"context_line":"multiple subsystems to single namespace. This is"},{"line_number":17,"context_line":"contrary to iSCSI whare multiple iGroups and allowed"},{"line_number":18,"context_line":"to map to single LUN. To overcome these limitations."},{"line_number":19,"context_line":"workflow is changed to have multiple hosts mapped to"},{"line_number":20,"context_line":"single subsystem and have single subsystem to"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":22,"id":"76c3dedb_f8fa2a52","line":17,"range":{"start_line":17,"start_character":41,"end_line":17,"end_character":44},"updated":"2025-07-16 16:39:00.000000000","message":"should this be \"are allowed\" (not \"and allowed\")?","commit_id":"a1c19e55cb2f02a7da87312fc26efc2d99a23bce"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"5edd8607ce7e5eb0fef89e92d9577e7d7084491f","unresolved":false,"context_lines":[{"line_number":14,"context_line":"and limitation from ONTAP have single subsystem can"},{"line_number":15,"context_line":"map to single namespace. To elaborate we can\u0027t map"},{"line_number":16,"context_line":"multiple subsystems to single namespace. This is"},{"line_number":17,"context_line":"contrary to iSCSI whare multiple iGroups and allowed"},{"line_number":18,"context_line":"to map to single LUN. To overcome these limitations."},{"line_number":19,"context_line":"workflow is changed to have multiple hosts mapped to"},{"line_number":20,"context_line":"single subsystem and have single subsystem to"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":22,"id":"949f5baf_1ad037c8","line":17,"range":{"start_line":17,"start_character":41,"end_line":17,"end_character":44},"in_reply_to":"76c3dedb_f8fa2a52","updated":"2025-07-31 17:04:23.000000000","message":"updated.","commit_id":"a1c19e55cb2f02a7da87312fc26efc2d99a23bce"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"5edd8607ce7e5eb0fef89e92d9577e7d7084491f","unresolved":false,"context_lines":[{"line_number":14,"context_line":"and limitation from ONTAP have single subsystem can"},{"line_number":15,"context_line":"map to single namespace. To elaborate we can\u0027t map"},{"line_number":16,"context_line":"multiple subsystems to single namespace. This is"},{"line_number":17,"context_line":"contrary to iSCSI whare multiple iGroups and allowed"},{"line_number":18,"context_line":"to map to single LUN. To overcome these limitations."},{"line_number":19,"context_line":"workflow is changed to have multiple hosts mapped to"},{"line_number":20,"context_line":"single subsystem and have single subsystem to"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":22,"id":"8ae75675_034197d4","line":17,"range":{"start_line":17,"start_character":18,"end_line":17,"end_character":23},"in_reply_to":"876068ae_0e42d727","updated":"2025-07-31 17:04:23.000000000","message":"updated","commit_id":"a1c19e55cb2f02a7da87312fc26efc2d99a23bce"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"c8a7da01393898b1313f0bd09b2a6041df38d4ca","unresolved":true,"context_lines":[{"line_number":15,"context_line":"map to single namespace. To elaborate we can\u0027t map"},{"line_number":16,"context_line":"multiple subsystems to single namespace. This is"},{"line_number":17,"context_line":"contrary to iSCSI whare multiple iGroups and allowed"},{"line_number":18,"context_line":"to map to single LUN. To overcome these limitations."},{"line_number":19,"context_line":"workflow is changed to have multiple hosts mapped to"},{"line_number":20,"context_line":"single subsystem and have single subsystem to"},{"line_number":21,"context_line":"namespace mapping."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":22,"id":"4f5c722c_80f7d7a2","line":18,"range":{"start_line":18,"start_character":51,"end_line":18,"end_character":52},"updated":"2025-07-16 16:39:00.000000000","message":"I think this should be a \u0027,\u0027 comma.","commit_id":"a1c19e55cb2f02a7da87312fc26efc2d99a23bce"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"5edd8607ce7e5eb0fef89e92d9577e7d7084491f","unresolved":false,"context_lines":[{"line_number":15,"context_line":"map to single namespace. To elaborate we can\u0027t map"},{"line_number":16,"context_line":"multiple subsystems to single namespace. This is"},{"line_number":17,"context_line":"contrary to iSCSI whare multiple iGroups and allowed"},{"line_number":18,"context_line":"to map to single LUN. To overcome these limitations."},{"line_number":19,"context_line":"workflow is changed to have multiple hosts mapped to"},{"line_number":20,"context_line":"single subsystem and have single subsystem to"},{"line_number":21,"context_line":"namespace mapping."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":22,"id":"0b317cad_5d3a1d1a","line":18,"range":{"start_line":18,"start_character":51,"end_line":18,"end_character":52},"in_reply_to":"4f5c722c_80f7d7a2","updated":"2025-07-31 17:04:23.000000000","message":"updated.","commit_id":"a1c19e55cb2f02a7da87312fc26efc2d99a23bce"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"b3a37cdcd17f9e578626ac1c9e682245e583625a","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     jayaanan \u003cjayaanand.borra@netapp.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2025-07-31 12:55:15 -0400"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NVMe namespace mapping fails during VM live migration"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When new Cinder volume is created a new subsystem and"},{"line_number":10,"context_line":"NVMe namespace created and mapped one-to-one in ONTAP."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":25,"id":"35933c79_6f45db31","line":7,"updated":"2025-08-07 20:13:19.000000000","message":"Please add \"NetApp: \" prefix","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     jayaanan \u003cjayaanand.borra@netapp.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2025-07-31 12:55:15 -0400"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NVMe namespace mapping fails during VM live migration"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"When new Cinder volume is created a new subsystem and"},{"line_number":10,"context_line":"NVMe namespace created and mapped one-to-one in ONTAP."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":25,"id":"7458a3ec_3a5c9b6a","line":7,"in_reply_to":"35933c79_6f45db31","updated":"2025-08-12 14:00:57.000000000","message":"Sure, Updated to NetApp","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"b50b3455f9ed7ce657dd31907acf139651c8ae9a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"e2d641ae_9e25a677","updated":"2024-09-09 07:46:09.000000000","message":"recheck","commit_id":"3b1084b0620283a05ae72ae6d9a1bae837a74fef"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"89743a0e8ce6f28e27f5c5b3c543570000384f28","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"0fc71c67_61e0513e","updated":"2025-03-07 07:37:34.000000000","message":"Few comments inline, also we need a better commit message and a releasenote.","commit_id":"8bba04242de163bd9d2d8a0a3c1c22dbd1075881"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"4d0d67a80a1ec6bd87f3dc4f607d97fd125f0d14","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"6fb18a20_a7ea55c7","updated":"2025-03-06 19:21:02.000000000","message":"i\u0027m sorry added cores by mistake","commit_id":"8bba04242de163bd9d2d8a0a3c1c22dbd1075881"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"f4d0ddb5774389186cd6a39aa755622dc85c93a1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"0f9dd9de_eac24881","updated":"2025-04-01 17:54:48.000000000","message":"Thank you! for your comments... please review again.","commit_id":"462dd67a5ae8f856b519183a441ff1b5fdadf0e0"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"abb82a20fb779e882f7396cbe071b0ac28242373","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"a2df5482_99191f56","updated":"2025-04-01 18:03:08.000000000","message":"is this change backward compatible? will it affect already running VMs?","commit_id":"462dd67a5ae8f856b519183a441ff1b5fdadf0e0"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"11ade8808900de7fddd0cdebb638fe64fb25adf1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":13,"id":"90679744_98e502b1","in_reply_to":"a2df5482_99191f56","updated":"2025-04-08 09:11:44.000000000","message":"This architectural change is not backward compatible because the previous implementation relied on an iSCSI-based approach, whereas NVMe in ONTAP functions differently, which has directly impacted the live migration feature; our initial solution to create an external script intended to convert the old NVMe configuration to the new ONTAP-style operation unfortunately resulted in the corruption of existing VMs, and as a consequence, the only viable solution to mitigate these compatibility issues is to perform a complete backup of the affected VMs, apply the new architecture patch, and then restore the VMs.","commit_id":"462dd67a5ae8f856b519183a441ff1b5fdadf0e0"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"33d8150de6409e2aabbf4efef0db8ae96ce4298b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"35c2a427_fc7ea8ce","updated":"2025-04-09 10:23:41.000000000","message":"recheck","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"a1d49330d58b866c77ac151059e74533c944394e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"e5ee2067_e6c1cc05","updated":"2025-06-25 14:01:11.000000000","message":"recheck","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"37a1e0bd059183fecdacccc53fcb9cc9206c23e8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":17,"id":"6b85d84b_92794b0b","updated":"2025-07-03 15:55:52.000000000","message":"suggested review comments are addressed. thank you for your review.","commit_id":"828b45445cdfba43f51303c8091b49972636351d"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"c8a7da01393898b1313f0bd09b2a6041df38d4ca","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":22,"id":"d83ba21b_fc0b2c9e","updated":"2025-07-16 16:39:00.000000000","message":"I haven\u0027t looked at the code changes, but I see the commit message and release note fail to mention the change pertains only to the NetApp driver. In particular, the release note reads like it represents a major \"breaking change\" to cinder\u0027s entire NVMe feature.\n\nYou can fix the commit message easily by adding a \"NetApp: \" prefix. Fixing the release note will be a little more involved.","commit_id":"a1c19e55cb2f02a7da87312fc26efc2d99a23bce"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"5edd8607ce7e5eb0fef89e92d9577e7d7084491f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":24,"id":"9853941e_6493f700","updated":"2025-07-31 17:04:23.000000000","message":"Thank you! Alan for your review comments. Addressed comments as per your suggestion. please review again.","commit_id":"261ec73e37567f3b61d93b2f3fe3d81fd4069b05"},{"author":{"_account_id":38162},"change_message_id":"6848f31ee86cc601d77a6a7f6c17cde74de821cf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"0680772a_220bff7b","updated":"2025-08-06 13:26:56.000000000","message":"run Netapp-CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"9362dce5858696c9360b01da5209b82cd5ba515a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"b0919764_7c15a8f8","updated":"2025-08-06 13:26:33.000000000","message":"run netapp-CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"6f3d46dcfee85ddb0aa5330c2a2dd9e6b31c8b64","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"0673a14f_66ab1878","updated":"2025-08-05 16:11:47.000000000","message":"run-NetApp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"6b684bc25042e126abcd07849d35eea842e2b24a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"27de64e0_858f6794","updated":"2025-08-06 10:28:35.000000000","message":"run-NetApp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"8c8b48b64c57dcdb887e1a902af80527dcc26cd3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"2e3694d8_6bea2fc8","updated":"2025-08-06 13:05:07.000000000","message":"run-NetApp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"176011c0ad0d96f7d9be3a7c746858721d366574","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"578d97f4_410b55eb","updated":"2025-08-05 06:08:45.000000000","message":"run-NetApp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"f871cffbb109b3f39ea4de2a9052f604b82fd2f2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"6862840f_d6aabea9","updated":"2025-08-05 16:34:02.000000000","message":"run-NetApp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"c721a40dadac33a68521da906bbb65fb8108aa16","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"69477e9e_802c129e","updated":"2025-08-05 12:52:07.000000000","message":"run-NetApp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"a7a595cea47e34b50d80a77c9aa2ed34d40d5d72","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"83660d3f_d5fc8cce","updated":"2025-08-06 13:27:15.000000000","message":"run-NetApp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"e931fdf01f8f19ef248be2abb078383270fedcfe","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"b407883e_44287d20","updated":"2025-08-06 12:33:55.000000000","message":"run-NetApp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"09e25efe0bef576e189110ef92f4b0cb98299fdf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"1606306f_deb616d4","updated":"2025-08-07 19:02:41.000000000","message":"run-Netapp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"50375912c540a66671d722a50c8c3c46acab4df6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"1b19b0bf_23a812ba","updated":"2025-08-07 18:50:08.000000000","message":"run-Netapp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"aee8d1ec22c90b170c415690b6cd1b6d53c90b1d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"28400653_d57aedb2","updated":"2025-08-07 17:39:27.000000000","message":"run-Netapp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"29a159712d087ccea4304e6e91d8ecf9c0b1a7ba","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"54d656e7_3c87818f","updated":"2025-08-06 14:13:16.000000000","message":"run-Netapp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"0fe7baffdd03210ba2cada838d5492f017ff1409","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"929bd356_30cf41c3","updated":"2025-08-06 14:04:21.000000000","message":"run-Netapp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"0bc58692088831324734d3c72e410f5bb17f69aa","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"ae3fb860_2131c139","updated":"2025-08-11 17:19:53.000000000","message":"run-Netapp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"750122c2c7c98b9e3cb1208d40cecbdbd94f6c99","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"c63f6a6b_795a1081","updated":"2025-08-08 06:02:10.000000000","message":"run-Netapp CI","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38162},"change_message_id":"84040ad8a6a138ff9e57dec302f168102e4033cd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":26,"id":"3183691f_9e5877f5","updated":"2025-08-12 10:35:52.000000000","message":"run-NetApp CI","commit_id":"b00604c32ce152989ba187e2676e7f114f0773b7"},{"author":{"_account_id":38162},"change_message_id":"bce43d5f637cee927055eef3044be228e9eca8c1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":26,"id":"6992f4a2_32efe98c","updated":"2025-08-12 10:38:32.000000000","message":"run-NetApp CI","commit_id":"b00604c32ce152989ba187e2676e7f114f0773b7"},{"author":{"_account_id":38162},"change_message_id":"e82dfeedf004baf80ed57c2c4efbdc9aa7959c62","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":26,"id":"f7797014_79b78d45","updated":"2025-08-12 10:51:08.000000000","message":"run-NetApp CI","commit_id":"b00604c32ce152989ba187e2676e7f114f0773b7"},{"author":{"_account_id":38162},"change_message_id":"9d51570573811fbcccdef81056f7fee121c00dd2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":26,"id":"108ac9ef_1069b6b2","updated":"2025-08-12 06:30:45.000000000","message":"run-Netapp CI","commit_id":"b00604c32ce152989ba187e2676e7f114f0773b7"},{"author":{"_account_id":38162},"change_message_id":"550da47043c713f5c5e3cbcce943e6468db34001","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":26,"id":"694eb5f5_f814c88e","updated":"2025-08-12 07:08:52.000000000","message":"run-Netapp CI","commit_id":"b00604c32ce152989ba187e2676e7f114f0773b7"},{"author":{"_account_id":38162},"change_message_id":"6dcaa35ce7026effeacd581402c9247e8eefb685","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":26,"id":"7a34da82_bcb2b771","updated":"2025-08-12 06:34:54.000000000","message":"run-Netapp CI","commit_id":"b00604c32ce152989ba187e2676e7f114f0773b7"},{"author":{"_account_id":38162},"change_message_id":"7b7db575d306e7620ef230c0ef1a0a30498123ce","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":26,"id":"7f47a96b_26a44fa8","updated":"2025-08-12 08:54:29.000000000","message":"run-Netapp CI","commit_id":"b00604c32ce152989ba187e2676e7f114f0773b7"},{"author":{"_account_id":38162},"change_message_id":"25d2e2c0079f2ea82c4c8d4ac25df24ef3081932","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":26,"id":"b95081bb_0a20db7d","updated":"2025-08-12 06:20:54.000000000","message":"run-Netapp CI","commit_id":"b00604c32ce152989ba187e2676e7f114f0773b7"},{"author":{"_account_id":38162},"change_message_id":"34fcd283fd1fd03a1d64b4b81bd3c0644b5c27a6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":26,"id":"d7a65425_fda18534","updated":"2025-08-12 09:01:10.000000000","message":"run-Netapp CI","commit_id":"b00604c32ce152989ba187e2676e7f114f0773b7"},{"author":{"_account_id":38162},"change_message_id":"e45957cca40947690c1d0c4d8651bd1f77f884bb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":26,"id":"eb0d2904_643cba61","updated":"2025-08-12 06:14:34.000000000","message":"run-Netapp CI","commit_id":"b00604c32ce152989ba187e2676e7f114f0773b7"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":27,"id":"a8c3b0c3_bba8d4ae","updated":"2025-08-12 14:00:57.000000000","message":"Thank you! Alan, for your detailed review. Addressed your review comments. Please review again.","commit_id":"8f3d3477c9e699428a0a531c867d41d157679dc3"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"3975a3e40cb486dbc88be65dbd505b91f42172d7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":27,"id":"82433de5_efdf97d3","updated":"2025-08-14 13:00:03.000000000","message":"This patchset resolves a number of previous comments! A debug message needs to be fixed, but the main concern is the release note and whether migrating mappings to the new architecture can be achieved by detach/reattach.","commit_id":"8f3d3477c9e699428a0a531c867d41d157679dc3"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"ff91b1e142e7bec73b9cbd86dd1a1016109956e0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":27,"id":"c34b2b11_8116ceb7","updated":"2025-08-13 05:41:09.000000000","message":"recheck","commit_id":"8f3d3477c9e699428a0a531c867d41d157679dc3"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"9165d592604c6109e2e0049ac0fd460071685e84","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":28,"id":"bdaf8f26_7b0044a3","updated":"2025-08-14 18:49:29.000000000","message":"Hi Alan, Thank you! for your detailed review. addressed suggested changes. Please review again.","commit_id":"f7702a53e1fe408759eb1c01106e89237da70a2b"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"fea51b483bbf0e180795c41b803334821c86ed0c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":29,"id":"fe6f7eed_b5f339b1","updated":"2025-08-19 14:48:08.000000000","message":"Thank you! Alan, responded to your review comments. Please review again.","commit_id":"c9485caf9b6920b744ece1be9453121edbd5496f"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"f11f2171768340eff3e093b025b16acccf9b2df0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":29,"id":"37c15b3a_7fd15078","updated":"2025-08-20 15:31:52.000000000","message":"This patch is very close, but I just spotted an issue with the latest release note. The main text is good, but the \"fixes\" section doesn\u0027t specify this is a NetApp driver fix.","commit_id":"c9485caf9b6920b744ece1be9453121edbd5496f"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"f90c38fbb3258633aa720c02620c1e0a50a0144d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":29,"id":"d6c072b8_e874f3b9","updated":"2025-08-20 10:51:37.000000000","message":"recheck- ceph-tempest failed.","commit_id":"c9485caf9b6920b744ece1be9453121edbd5496f"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"1d60d6a86873250bfd78306446d7d468731bd3dc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":29,"id":"018fec1f_b793f5df","updated":"2025-08-20 05:12:39.000000000","message":"recheck. nfs-tempest post failure not related to my changes.","commit_id":"c9485caf9b6920b744ece1be9453121edbd5496f"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"e14cb6261b348481beff0907395d94a04d799074","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"de6f4ae9_7fd73ae8","updated":"2025-08-27 12:31:13.000000000","message":"Hi @rajatdhasmana@gmail.com, Can you please review this patch","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"d6edfda792102f6714f6c4a6901399661c44d342","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"68bdf2a3_1863bce1","updated":"2025-08-27 14:30:28.000000000","message":"Hi @waboring@hemna.com, Can you please review this changes. Feature freeze is approaching. Thank you!","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"},{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"8fea417afe7e6c0ddf676e5b482f019781b0912e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"09e87eba_0973b4f7","updated":"2025-08-28 15:45:08.000000000","message":"Please see comments.","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"c12dc4322ede12014493156810dc4220cfc5598a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"4c377c10_0f23008e","updated":"2025-08-27 18:20:01.000000000","message":"Run-NetApp CI","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"262464dca28bf15502560ffbdc387c5c57f6c636","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"89abbb3c_fe228a60","updated":"2025-08-21 12:20:05.000000000","message":"Thank you! Alan, addressed suggested review comments. Please review again.","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"359da8211e2cb447d74f5936caec9071c819e712","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"1a1f37d5_b9738f2b","updated":"2025-08-22 14:36:35.000000000","message":"recheck","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"9b1ba2343c3029b1be331a51795e4f10f08b168a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"1b3b5290_e875d7de","updated":"2025-08-22 17:16:37.000000000","message":"recheck","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"12379650f63045528ee0d31ff1d0f4422c9bef4f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"33a2863d_6fba9f68","updated":"2025-08-22 11:46:39.000000000","message":"recheck","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"f7d76997635622acbdf00d49a2e5ffae6bf2d561","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"4ef6283b_bfc9aab7","updated":"2025-08-22 05:32:53.000000000","message":"recheck","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"cff148a0136d231d9cbd9901e37060799149e35a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"93679c98_82a8ebe8","updated":"2025-08-21 14:26:47.000000000","message":"recheck","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"4d011f44aa69e5799caed7ed21c97c9f5c36164a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":31,"id":"d1fb167d_2f884390","updated":"2025-08-22 18:58:05.000000000","message":"recheck","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"dbbfe7a38e4fd6d9be78411161b6f34ff017e407","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":32,"id":"663c5c2f_ae4c6fc0","updated":"2025-08-29 10:28:12.000000000","message":"Hi @abishop@redhat.com, addressed minor log changes. can you please review again.","commit_id":"aa6a11b2468bfebfb93534253146c1225842ce7b"},{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"707261124816ad55b2111033cf68c44820c1f27a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":32,"id":"aa1c8f22_488d4675","updated":"2025-08-29 04:44:43.000000000","message":"LGTM","commit_id":"aa6a11b2468bfebfb93534253146c1225842ce7b"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"fa190a1072cc55e96d64d5fcc7d43a6bcd80c6cb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":32,"id":"8eaa9fbc_b0b76aa7","updated":"2025-08-28 18:56:00.000000000","message":"Thank you! Anoop, Review comments are addressed. please review again.","commit_id":"aa6a11b2468bfebfb93534253146c1225842ce7b"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"be735db73aa9679aaf7a1110d8de13d8c5ffb0e0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":32,"id":"88df6bde_6720c955","updated":"2025-08-29 21:34:59.000000000","message":"The upgrade path is horrifying, but like Jon and Alan, I don\u0027t see that as a reason to hold up the patch, particularly since it affects only particular consumers of this particular back end.  I don\u0027t see anything alarming in the code or tests, so +2 from me.","commit_id":"aa6a11b2468bfebfb93534253146c1225842ce7b"},{"author":{"_account_id":9236,"name":"Jon Bernard","email":"jobernar@redhat.com","username":"jbernard"},"change_message_id":"2836a04662d303ab3de7733ba9520abc4737516e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":32,"id":"3debba22_b539ad95","updated":"2025-08-29 17:05:45.000000000","message":"This looks good to me.  Spoke with Alan, he\u0027s slightly reluctant because the only upgrade path for a given volume is to do a backup/restore, which is painful and disrupts workloads.  Neither of us think that\u0027s a reason to hold this patch up.","commit_id":"aa6a11b2468bfebfb93534253146c1225842ce7b"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"31dc4239c27613ba3625f12e12403535bbd4cafc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":32,"id":"862cdd4e_7b847b79","updated":"2025-08-29 04:37:42.000000000","message":"recheck","commit_id":"aa6a11b2468bfebfb93534253146c1225842ce7b"},{"author":{"_account_id":38290},"change_message_id":"99c912e78e9661d01b384ff64066665fc3462c98","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":32,"id":"b26e1880_9c82603d","updated":"2025-08-29 14:57:55.000000000","message":"run-NetApp CI","commit_id":"aa6a11b2468bfebfb93534253146c1225842ce7b"}],"cinder/volume/drivers/netapp/dataontap/client/client_cmode_rest.py":[{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"e46627bee889e2382c728cf7a6d18f03657d9f2a","unresolved":true,"context_lines":[{"line_number":2915,"context_line":"            code \u003d e.code"},{"line_number":2916,"context_line":"            message \u003d e.message"},{"line_number":2917,"context_line":"            if e.code \u003d\u003d 72089705:"},{"line_number":2918,"context_line":"                LOG.error(\"Host %(host_nqn)s is already mapped to subsystem %(subsystem_uuid)s\",)"},{"line_number":2919,"context_line":"                pass"},{"line_number":2920,"context_line":"            else:"},{"line_number":2921,"context_line":"                LOG.warning(\u0027Error mapping host to subsystem. Code :%(code)s, Message: \u0027"}],"source_content_type":"text/x-python","patch_set":10,"id":"a3b3c48b_acd36ebf","line":2918,"range":{"start_line":2918,"start_character":26,"end_line":2918,"end_character":97},"updated":"2025-03-12 11:02:05.000000000","message":"You forgot to add the actual values to format the string with, this will blow up if reached","commit_id":"8205a9d4766b835d28ed93ab5eaeadfe01cc4da5"},{"author":{"_account_id":9542,"name":"Pavlo Shchelokovskyy","email":"pshchelokovskyy@mirantis.com","username":"pshchelo"},"change_message_id":"f4ec0198a3d4829d1c918994bd857ede06823d3a","unresolved":true,"context_lines":[{"line_number":2915,"context_line":"            code \u003d e.code"},{"line_number":2916,"context_line":"            message \u003d e.message"},{"line_number":2917,"context_line":"            if e.code \u003d\u003d 72089705:"},{"line_number":2918,"context_line":"                LOG.error(\"Host %(host_nqn)s is already mapped to subsystem %(subsystem_uuid)s\",)"},{"line_number":2919,"context_line":"                pass"},{"line_number":2920,"context_line":"            else:"},{"line_number":2921,"context_line":"                LOG.warning(\u0027Error mapping host to subsystem. Code :%(code)s, Message: \u0027"}],"source_content_type":"text/x-python","patch_set":10,"id":"bc828e74_fa2a724c","line":2918,"range":{"start_line":2918,"start_character":26,"end_line":2918,"end_character":97},"in_reply_to":"a3b3c48b_acd36ebf","updated":"2025-03-12 11:09:44.000000000","message":"ok, it won\u0027t blow up, but still, the error will be rendered w/o those values.","commit_id":"8205a9d4766b835d28ed93ab5eaeadfe01cc4da5"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"0daa3a445cf91105a7bab40ae51d3af0eaed686e","unresolved":true,"context_lines":[{"line_number":2915,"context_line":"            code \u003d e.code"},{"line_number":2916,"context_line":"            message \u003d e.message"},{"line_number":2917,"context_line":"            if e.code \u003d\u003d 72089705:"},{"line_number":2918,"context_line":"                LOG.error(\"Host %(host_nqn)s is already mapped to subsystem %(subsystem_uuid)s\",)"},{"line_number":2919,"context_line":"                pass"},{"line_number":2920,"context_line":"            else:"},{"line_number":2921,"context_line":"                LOG.warning(\u0027Error mapping host to subsystem. Code :%(code)s, Message: \u0027"}],"source_content_type":"text/x-python","patch_set":10,"id":"c6704b07_01a0fd7e","line":2918,"range":{"start_line":2918,"start_character":26,"end_line":2918,"end_character":97},"in_reply_to":"bc828e74_fa2a724c","updated":"2025-03-12 13:09:07.000000000","message":"You should be using the \"old\" style for this though. Leave the string formatting to the logger when it\u0027s needed.\n\nSame elsewhere.","commit_id":"8205a9d4766b835d28ed93ab5eaeadfe01cc4da5"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"f4d0ddb5774389186cd6a39aa755622dc85c93a1","unresolved":false,"context_lines":[{"line_number":2915,"context_line":"            code \u003d e.code"},{"line_number":2916,"context_line":"            message \u003d e.message"},{"line_number":2917,"context_line":"            if e.code \u003d\u003d 72089705:"},{"line_number":2918,"context_line":"                LOG.error(\"Host %(host_nqn)s is already mapped to subsystem %(subsystem_uuid)s\",)"},{"line_number":2919,"context_line":"                pass"},{"line_number":2920,"context_line":"            else:"},{"line_number":2921,"context_line":"                LOG.warning(\u0027Error mapping host to subsystem. Code :%(code)s, Message: \u0027"}],"source_content_type":"text/x-python","patch_set":10,"id":"1c03edb0_7e960e64","line":2918,"range":{"start_line":2918,"start_character":26,"end_line":2918,"end_character":97},"in_reply_to":"c6704b07_01a0fd7e","updated":"2025-04-01 17:54:48.000000000","message":"Thank you! missed to provide actual values... corrected now.","commit_id":"8205a9d4766b835d28ed93ab5eaeadfe01cc4da5"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"b3a37cdcd17f9e578626ac1c9e682245e583625a","unresolved":true,"context_lines":[{"line_number":2799,"context_line":"        return [{\u0027name\u0027: subsystem[\u0027name\u0027], \u0027os_type\u0027: subsystem[\u0027os_type\u0027]}"},{"line_number":2800,"context_line":"                for subsystem in records]"},{"line_number":2801,"context_line":""},{"line_number":2802,"context_line":"    def get_subsystem_by_path(self, path):"},{"line_number":2803,"context_line":"        \"\"\"Get subsystem exactly matching the initiator host.\"\"\""},{"line_number":2804,"context_line":"        query \u003d {"},{"line_number":2805,"context_line":"            \u0027svm.name\u0027: self.vserver,"}],"source_content_type":"text/x-python","patch_set":25,"id":"bfe59e46_654e97fd","line":2802,"updated":"2025-08-07 20:13:19.000000000","message":"This function isn\u0027t called from anywhere other than the unit tests, and so it shouldn\u0027t be included in this patch. If it\u0027s needed by a another patch then it should be added there.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[{"line_number":2799,"context_line":"        return [{\u0027name\u0027: subsystem[\u0027name\u0027], \u0027os_type\u0027: subsystem[\u0027os_type\u0027]}"},{"line_number":2800,"context_line":"                for subsystem in records]"},{"line_number":2801,"context_line":""},{"line_number":2802,"context_line":"    def get_subsystem_by_path(self, path):"},{"line_number":2803,"context_line":"        \"\"\"Get subsystem exactly matching the initiator host.\"\"\""},{"line_number":2804,"context_line":"        query \u003d {"},{"line_number":2805,"context_line":"            \u0027svm.name\u0027: self.vserver,"}],"source_content_type":"text/x-python","patch_set":25,"id":"792ac31c_35f24a63","line":2802,"in_reply_to":"bfe59e46_654e97fd","updated":"2025-08-12 14:00:57.000000000","message":"client_cmode_rest rest is like utils class where mirror functions to ONTAP REST is mapped. Left it for future use. I will remove if you suggest to do so. Thank you!.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"b3a37cdcd17f9e578626ac1c9e682245e583625a","unresolved":true,"context_lines":[{"line_number":2800,"context_line":"                for subsystem in records]"},{"line_number":2801,"context_line":""},{"line_number":2802,"context_line":"    def get_subsystem_by_path(self, path):"},{"line_number":2803,"context_line":"        \"\"\"Get subsystem exactly matching the initiator host.\"\"\""},{"line_number":2804,"context_line":"        query \u003d {"},{"line_number":2805,"context_line":"            \u0027svm.name\u0027: self.vserver,"},{"line_number":2806,"context_line":"            \u0027subsystem_maps.namespace.name\u0027: path,"}],"source_content_type":"text/x-python","patch_set":25,"id":"6131b37a_2c954354","line":2803,"updated":"2025-08-07 20:13:19.000000000","message":"This comment needs to be updated (it\u0027s a direct copy of L2787).","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[{"line_number":2800,"context_line":"                for subsystem in records]"},{"line_number":2801,"context_line":""},{"line_number":2802,"context_line":"    def get_subsystem_by_path(self, path):"},{"line_number":2803,"context_line":"        \"\"\"Get subsystem exactly matching the initiator host.\"\"\""},{"line_number":2804,"context_line":"        query \u003d {"},{"line_number":2805,"context_line":"            \u0027svm.name\u0027: self.vserver,"},{"line_number":2806,"context_line":"            \u0027subsystem_maps.namespace.name\u0027: path,"}],"source_content_type":"text/x-python","patch_set":25,"id":"4365153d_58e395c4","line":2803,"in_reply_to":"6131b37a_2c954354","updated":"2025-08-12 14:00:57.000000000","message":"Yes, updated comment to reflect functionality.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"b3a37cdcd17f9e578626ac1c9e682245e583625a","unresolved":true,"context_lines":[{"line_number":2914,"context_line":"                          query\u003dquery)"},{"line_number":2915,"context_line":""},{"line_number":2916,"context_line":"    def unmap_host_with_subsystem(self, host_nqn, subsystem_uuid):"},{"line_number":2917,"context_line":"        \"\"\"Unmaps a host from given subsystem.\"\"\""},{"line_number":2918,"context_line":"        url \u003d f\u0027/protocols/nvme/subsystems/{subsystem_uuid}/hosts/{host_nqn}\u0027"},{"line_number":2919,"context_line":"        try:"},{"line_number":2920,"context_line":"            self.send_request(url, \u0027delete\u0027)"}],"source_content_type":"text/x-python","patch_set":25,"id":"92806f13_a0ca467a","line":2917,"updated":"2025-08-07 20:13:19.000000000","message":"The code will log a NaApiError but won\u0027t propagate the error. Does that mean it\u0027s OK for the code that calls this function to proceed? If errors are OK and can be ignored (just logged) then it would be good to add this information in the comment.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[{"line_number":2914,"context_line":"                          query\u003dquery)"},{"line_number":2915,"context_line":""},{"line_number":2916,"context_line":"    def unmap_host_with_subsystem(self, host_nqn, subsystem_uuid):"},{"line_number":2917,"context_line":"        \"\"\"Unmaps a host from given subsystem.\"\"\""},{"line_number":2918,"context_line":"        url \u003d f\u0027/protocols/nvme/subsystems/{subsystem_uuid}/hosts/{host_nqn}\u0027"},{"line_number":2919,"context_line":"        try:"},{"line_number":2920,"context_line":"            self.send_request(url, \u0027delete\u0027)"}],"source_content_type":"text/x-python","patch_set":25,"id":"f171544e_712631f0","line":2917,"in_reply_to":"92806f13_a0ca467a","updated":"2025-08-12 14:00:57.000000000","message":"yes, updated comment to reflect function behavior. Thank you!","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"b3a37cdcd17f9e578626ac1c9e682245e583625a","unresolved":true,"context_lines":[{"line_number":2939,"context_line":"        except netapp_api.NaApiError as e:"},{"line_number":2940,"context_line":"            code \u003d e.code"},{"line_number":2941,"context_line":"            message \u003d e.message"},{"line_number":2942,"context_line":"            if e.code \u003d\u003d 72089705:"},{"line_number":2943,"context_line":"                LOG.error(\u0027Host %(host_nqn)s is already mapped to subsystem \u0027"},{"line_number":2944,"context_line":"                          \u0027%(subsystem_uuid)s\u0027,"},{"line_number":2945,"context_line":"                          {\u0027host_nqn\u0027: host_nqn,"}],"source_content_type":"text/x-python","patch_set":25,"id":"f879577c_0c60dd4c","line":2942,"range":{"start_line":2942,"start_character":25,"end_line":2942,"end_character":33},"updated":"2025-08-07 20:13:19.000000000","message":"Using mysterious numbers like this is not good practice. It should be given a descriptive name (EHOST_ALREADY_MAPPED ?) and added to the client/api.py file along with the other error codes.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[{"line_number":2939,"context_line":"        except netapp_api.NaApiError as e:"},{"line_number":2940,"context_line":"            code \u003d e.code"},{"line_number":2941,"context_line":"            message \u003d e.message"},{"line_number":2942,"context_line":"            if e.code \u003d\u003d 72089705:"},{"line_number":2943,"context_line":"                LOG.error(\u0027Host %(host_nqn)s is already mapped to subsystem \u0027"},{"line_number":2944,"context_line":"                          \u0027%(subsystem_uuid)s\u0027,"},{"line_number":2945,"context_line":"                          {\u0027host_nqn\u0027: host_nqn,"}],"source_content_type":"text/x-python","patch_set":25,"id":"45b866f8_6256f1dc","line":2942,"range":{"start_line":2942,"start_character":25,"end_line":2942,"end_character":33},"in_reply_to":"f879577c_0c60dd4c","updated":"2025-08-12 14:00:57.000000000","message":"yes, created new content REST_HOST_ALREADY_MAPPED_TO_SUBSYSTEM and used for error mapping.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"b3a37cdcd17f9e578626ac1c9e682245e583625a","unresolved":true,"context_lines":[{"line_number":2940,"context_line":"            code \u003d e.code"},{"line_number":2941,"context_line":"            message \u003d e.message"},{"line_number":2942,"context_line":"            if e.code \u003d\u003d 72089705:"},{"line_number":2943,"context_line":"                LOG.error(\u0027Host %(host_nqn)s is already mapped to subsystem \u0027"},{"line_number":2944,"context_line":"                          \u0027%(subsystem_uuid)s\u0027,"},{"line_number":2945,"context_line":"                          {\u0027host_nqn\u0027: host_nqn,"},{"line_number":2946,"context_line":"                           \u0027subsystem_uuid\u0027: subsystem_uuid})"}],"source_content_type":"text/x-python","patch_set":25,"id":"a68f8338_40946a4e","line":2943,"range":{"start_line":2943,"start_character":20,"end_line":2943,"end_character":25},"updated":"2025-08-07 20:13:19.000000000","message":"Logging this as an error doesn\u0027t feel right. Perhaps it should be just an Info (or even Debug)?","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[{"line_number":2940,"context_line":"            code \u003d e.code"},{"line_number":2941,"context_line":"            message \u003d e.message"},{"line_number":2942,"context_line":"            if e.code \u003d\u003d 72089705:"},{"line_number":2943,"context_line":"                LOG.error(\u0027Host %(host_nqn)s is already mapped to subsystem \u0027"},{"line_number":2944,"context_line":"                          \u0027%(subsystem_uuid)s\u0027,"},{"line_number":2945,"context_line":"                          {\u0027host_nqn\u0027: host_nqn,"},{"line_number":2946,"context_line":"                           \u0027subsystem_uuid\u0027: subsystem_uuid})"}],"source_content_type":"text/x-python","patch_set":25,"id":"6e6d4d85_fdc798f9","line":2943,"range":{"start_line":2943,"start_character":20,"end_line":2943,"end_character":25},"in_reply_to":"a68f8338_40946a4e","updated":"2025-08-12 14:00:57.000000000","message":"yes, logging is modified to info","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"b3a37cdcd17f9e578626ac1c9e682245e583625a","unresolved":true,"context_lines":[{"line_number":2945,"context_line":"                          {\u0027host_nqn\u0027: host_nqn,"},{"line_number":2946,"context_line":"                           \u0027subsystem_uuid\u0027: subsystem_uuid})"},{"line_number":2947,"context_line":"            else:"},{"line_number":2948,"context_line":"                LOG.warning("},{"line_number":2949,"context_line":"                    \u0027Error mapping host to subsystem. Code :\u0027"},{"line_number":2950,"context_line":"                    \u0027%(code)s, Message: %(message)s\u0027,"},{"line_number":2951,"context_line":"                    {\u0027code\u0027: code, \u0027message\u0027: message}"}],"source_content_type":"text/x-python","patch_set":25,"id":"c65e2e51_08756b97","line":2948,"range":{"start_line":2948,"start_character":20,"end_line":2948,"end_character":27},"updated":"2025-08-07 20:13:19.000000000","message":"But this one does seem like it should be logged as an Error, especially because the exception will be re-raised.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[{"line_number":2945,"context_line":"                          {\u0027host_nqn\u0027: host_nqn,"},{"line_number":2946,"context_line":"                           \u0027subsystem_uuid\u0027: subsystem_uuid})"},{"line_number":2947,"context_line":"            else:"},{"line_number":2948,"context_line":"                LOG.warning("},{"line_number":2949,"context_line":"                    \u0027Error mapping host to subsystem. Code :\u0027"},{"line_number":2950,"context_line":"                    \u0027%(code)s, Message: %(message)s\u0027,"},{"line_number":2951,"context_line":"                    {\u0027code\u0027: code, \u0027message\u0027: message}"}],"source_content_type":"text/x-python","patch_set":25,"id":"93d5dd5c_68b7c56e","line":2948,"range":{"start_line":2948,"start_character":20,"end_line":2948,"end_character":27},"in_reply_to":"c65e2e51_08756b97","updated":"2025-08-12 14:00:57.000000000","message":"yes, warning is modified to error.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"8fea417afe7e6c0ddf676e5b482f019781b0912e","unresolved":true,"context_lines":[{"line_number":2927,"context_line":"            self.send_request(url, \u0027delete\u0027)"},{"line_number":2928,"context_line":"        except netapp_api.NaApiError as e:"},{"line_number":2929,"context_line":"            LOG.warning("},{"line_number":2930,"context_line":"                \"Error unmapping host to subsystem. Code: %(code)s, Message: \""},{"line_number":2931,"context_line":"                \"%(message)s\", {\u0027code\u0027: e.code, \u0027message\u0027: e.message}"},{"line_number":2932,"context_line":"            )"},{"line_number":2933,"context_line":""}],"source_content_type":"text/x-python","patch_set":31,"id":"4d6a1ff7_1bab996e","line":2930,"updated":"2025-08-28 15:45:08.000000000","message":"Should we log the subsystem uuid and host nqn here?","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"fa190a1072cc55e96d64d5fcc7d43a6bcd80c6cb","unresolved":false,"context_lines":[{"line_number":2927,"context_line":"            self.send_request(url, \u0027delete\u0027)"},{"line_number":2928,"context_line":"        except netapp_api.NaApiError as e:"},{"line_number":2929,"context_line":"            LOG.warning("},{"line_number":2930,"context_line":"                \"Error unmapping host to subsystem. Code: %(code)s, Message: \""},{"line_number":2931,"context_line":"                \"%(message)s\", {\u0027code\u0027: e.code, \u0027message\u0027: e.message}"},{"line_number":2932,"context_line":"            )"},{"line_number":2933,"context_line":""}],"source_content_type":"text/x-python","patch_set":31,"id":"5ae1650d_937e33e9","line":2930,"in_reply_to":"4d6a1ff7_1bab996e","updated":"2025-08-28 18:56:00.000000000","message":"reworked on message to add uuid and host nqn.","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"}],"cinder/volume/drivers/netapp/dataontap/nvme_library.py":[{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"c5b5f6b2fa285deb283bd319b3d8161957bccd46","unresolved":true,"context_lines":[{"line_number":307,"context_line":"        return {\u0027provider_location\u0027: handle}"},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"    def remove_export(self, context, volume):"},{"line_number":310,"context_line":"        \"\"\"Driver entry point to get the export info for a ditaching volume.\"\"\""},{"line_number":311,"context_line":"        handle \u003d self._get_namespace_attr(volume[\u0027name\u0027], \u0027handle\u0027)"},{"line_number":312,"context_line":"        return {\u0027provider_location\u0027: handle}"},{"line_number":313,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"1d0e674a_7e2bd20d","line":310,"range":{"start_line":310,"start_character":59,"end_line":310,"end_character":68},"updated":"2024-12-19 19:33:18.000000000","message":"detaching","commit_id":"ecc09c5bb651c0137e95f0a27356d77a38a17918"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"f4d0ddb5774389186cd6a39aa755622dc85c93a1","unresolved":false,"context_lines":[{"line_number":307,"context_line":"        return {\u0027provider_location\u0027: handle}"},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"    def remove_export(self, context, volume):"},{"line_number":310,"context_line":"        \"\"\"Driver entry point to get the export info for a ditaching volume.\"\"\""},{"line_number":311,"context_line":"        handle \u003d self._get_namespace_attr(volume[\u0027name\u0027], \u0027handle\u0027)"},{"line_number":312,"context_line":"        return {\u0027provider_location\u0027: handle}"},{"line_number":313,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"be6c6584_2c8fc3d7","line":310,"range":{"start_line":310,"start_character":59,"end_line":310,"end_character":68},"in_reply_to":"1d0e674a_7e2bd20d","updated":"2025-04-01 17:54:48.000000000","message":"Thank you! Code is removed and approach is changed.","commit_id":"ecc09c5bb651c0137e95f0a27356d77a38a17918"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"89743a0e8ce6f28e27f5c5b3c543570000384f28","unresolved":true,"context_lines":[{"line_number":642,"context_line":"    def _map_namespace(self, name, host_nqn):"},{"line_number":643,"context_line":"        \"\"\"Maps namespace to the host nqn and returns its ID assigned.\"\"\""},{"line_number":644,"context_line":""},{"line_number":645,"context_line":"        subsystem_name, subsystem_host_os \u003d self._get_or_create_subsystem("},{"line_number":646,"context_line":"            host_nqn, self.host_type)"},{"line_number":647,"context_line":"        if subsystem_host_os !\u003d self.host_type:"},{"line_number":648,"context_line":"            LOG.warning(\"Namespace misalignment may occur for current\""},{"line_number":649,"context_line":"                        \" subsystem %(sub_name)s with host OS type\""}],"source_content_type":"text/x-python","patch_set":8,"id":"e93988fb_9c2d9885","line":646,"range":{"start_line":645,"start_character":8,"end_line":646,"end_character":37},"updated":"2025-03-07 07:37:34.000000000","message":"looking at the launchpad bug, we are creating a new subsystem with \"openstack-\" prefix (if it doesn\u0027t exist) but we are not cleaning it up in case of failures which is leading to stale subsystem entries which is something we should also address here.","commit_id":"8bba04242de163bd9d2d8a0a3c1c22dbd1075881"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"f4d0ddb5774389186cd6a39aa755622dc85c93a1","unresolved":false,"context_lines":[{"line_number":642,"context_line":"    def _map_namespace(self, name, host_nqn):"},{"line_number":643,"context_line":"        \"\"\"Maps namespace to the host nqn and returns its ID assigned.\"\"\""},{"line_number":644,"context_line":""},{"line_number":645,"context_line":"        subsystem_name, subsystem_host_os \u003d self._get_or_create_subsystem("},{"line_number":646,"context_line":"            host_nqn, self.host_type)"},{"line_number":647,"context_line":"        if subsystem_host_os !\u003d self.host_type:"},{"line_number":648,"context_line":"            LOG.warning(\"Namespace misalignment may occur for current\""},{"line_number":649,"context_line":"                        \" subsystem %(sub_name)s with host OS type\""}],"source_content_type":"text/x-python","patch_set":8,"id":"576cfdc5_903cd945","line":646,"range":{"start_line":645,"start_character":8,"end_line":646,"end_character":37},"in_reply_to":"e93988fb_9c2d9885","updated":"2025-04-01 17:54:48.000000000","message":"thank you! we changed workflow now. now host NQN driven approach is adapted.","commit_id":"8bba04242de163bd9d2d8a0a3c1c22dbd1075881"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"89743a0e8ce6f28e27f5c5b3c543570000384f28","unresolved":true,"context_lines":[{"line_number":658,"context_line":"            LOG.debug(\"Mapping Namespace name, host_nqn, path and\""},{"line_number":659,"context_line":"                      \" subsystem_name: %s, %s, %s, %s\","},{"line_number":660,"context_line":"                      name, host_nqn, path, subsystem_name)"},{"line_number":661,"context_line":"            mapped_subsystems \u003d self.client.get_subsystem_by_path(path)"},{"line_number":662,"context_line":"            LOG.debug(\"Current mapped subsystem for path : %s\", mapped_subsystems)"},{"line_number":663,"context_line":"            if not mapped_subsystems:"},{"line_number":664,"context_line":"                ns_uuid \u003d self.client.map_namespace(path, subsystem_name, )"}],"source_content_type":"text/x-python","patch_set":8,"id":"fbfe017a_6ef9c77a","line":661,"range":{"start_line":661,"start_character":12,"end_line":661,"end_character":71},"updated":"2025-03-07 07:37:34.000000000","message":"I\u0027m confused here, first we call _get_or_create_subsystem and then we call get_subsystem_by_path to get the subsystem again?\nWhy are we doing 2 calls to get the right subsystem, 1st with host and 2nd with volume path? Also this logic should be in _get_or_create_subsystem itself since this method, as the name suggests, should only be performing the mapping of the LUN, instead of determining the right subsystem to map to.","commit_id":"8bba04242de163bd9d2d8a0a3c1c22dbd1075881"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"f4d0ddb5774389186cd6a39aa755622dc85c93a1","unresolved":false,"context_lines":[{"line_number":658,"context_line":"            LOG.debug(\"Mapping Namespace name, host_nqn, path and\""},{"line_number":659,"context_line":"                      \" subsystem_name: %s, %s, %s, %s\","},{"line_number":660,"context_line":"                      name, host_nqn, path, subsystem_name)"},{"line_number":661,"context_line":"            mapped_subsystems \u003d self.client.get_subsystem_by_path(path)"},{"line_number":662,"context_line":"            LOG.debug(\"Current mapped subsystem for path : %s\", mapped_subsystems)"},{"line_number":663,"context_line":"            if not mapped_subsystems:"},{"line_number":664,"context_line":"                ns_uuid \u003d self.client.map_namespace(path, subsystem_name, )"}],"source_content_type":"text/x-python","patch_set":8,"id":"77dafb7b_8aac1c6a","line":661,"range":{"start_line":661,"start_character":12,"end_line":661,"end_character":71},"in_reply_to":"fbfe017a_6ef9c77a","updated":"2025-04-01 17:54:48.000000000","message":"Thank you! Code is removed and approach is changed.","commit_id":"8bba04242de163bd9d2d8a0a3c1c22dbd1075881"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"89743a0e8ce6f28e27f5c5b3c543570000384f28","unresolved":true,"context_lines":[{"line_number":669,"context_line":"                mapped_subsystem_name \u003d mapped_subsystems[0][\u0027name\u0027]"},{"line_number":670,"context_line":"                if mapped_subsystem_name !\u003d subsystem_name:"},{"line_number":671,"context_line":"                    LOG.debug(\"Unmapping : %s, %s\", path, mapped_subsystem_name)"},{"line_number":672,"context_line":"                    self.client.unmap_namespace(path, mapped_subsystem_name)"},{"line_number":673,"context_line":"                    LOG.debug(\"Mapping: %s, %s\", path, subsystem_name)"},{"line_number":674,"context_line":"                    ns_uuid \u003d self.client.map_namespace(path, subsystem_name, )"},{"line_number":675,"context_line":"                    LOG.debug(\"Mapped namespace to subsystem : %s, %s\","}],"source_content_type":"text/x-python","patch_set":8,"id":"73b11143_029e0fa6","line":672,"range":{"start_line":672,"start_character":20,"end_line":672,"end_character":76},"updated":"2025-03-07 07:37:34.000000000","message":"this looks wrong to me, if the namespace is mapped to the wrong subsystem, we should either:\n1. proceed the operation with warning\n2. raise error and fail if it\u0027s really undesired behavior\n\nbut in any case, we should let the user perform the unmapping and not try to make the code too smart to take decisions for the user which could lead to further issues like accidently unmapping the wrong namespace.","commit_id":"8bba04242de163bd9d2d8a0a3c1c22dbd1075881"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"f4d0ddb5774389186cd6a39aa755622dc85c93a1","unresolved":false,"context_lines":[{"line_number":669,"context_line":"                mapped_subsystem_name \u003d mapped_subsystems[0][\u0027name\u0027]"},{"line_number":670,"context_line":"                if mapped_subsystem_name !\u003d subsystem_name:"},{"line_number":671,"context_line":"                    LOG.debug(\"Unmapping : %s, %s\", path, mapped_subsystem_name)"},{"line_number":672,"context_line":"                    self.client.unmap_namespace(path, mapped_subsystem_name)"},{"line_number":673,"context_line":"                    LOG.debug(\"Mapping: %s, %s\", path, subsystem_name)"},{"line_number":674,"context_line":"                    ns_uuid \u003d self.client.map_namespace(path, subsystem_name, )"},{"line_number":675,"context_line":"                    LOG.debug(\"Mapped namespace to subsystem : %s, %s\","}],"source_content_type":"text/x-python","patch_set":8,"id":"13e41038_767b1df5","line":672,"range":{"start_line":672,"start_character":20,"end_line":672,"end_character":76},"in_reply_to":"73b11143_029e0fa6","updated":"2025-04-01 17:54:48.000000000","message":"Thank you! approach is changed now. can you please re-look","commit_id":"8bba04242de163bd9d2d8a0a3c1c22dbd1075881"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"89743a0e8ce6f28e27f5c5b3c543570000384f28","unresolved":true,"context_lines":[{"line_number":676,"context_line":"                              ns_uuid, subsystem_name)"},{"line_number":677,"context_line":"                    return subsystem_name, ns_uuid"},{"line_number":678,"context_line":"                else:"},{"line_number":679,"context_line":"                    LOG.debug(\"All mappings are in place\")"},{"line_number":680,"context_line":"                    return"},{"line_number":681,"context_line":"        except netapp_api.NaApiError as e:"},{"line_number":682,"context_line":"            (subsystem_name, ns_uuid) \u003d self._find_mapped_namespace_subsystem("}],"source_content_type":"text/x-python","patch_set":8,"id":"e1b6cb1f_80bc5e11","line":679,"range":{"start_line":679,"start_character":20,"end_line":679,"end_character":58},"updated":"2025-03-07 07:37:34.000000000","message":"this log looks unnecessary","commit_id":"8bba04242de163bd9d2d8a0a3c1c22dbd1075881"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"f4d0ddb5774389186cd6a39aa755622dc85c93a1","unresolved":false,"context_lines":[{"line_number":676,"context_line":"                              ns_uuid, subsystem_name)"},{"line_number":677,"context_line":"                    return subsystem_name, ns_uuid"},{"line_number":678,"context_line":"                else:"},{"line_number":679,"context_line":"                    LOG.debug(\"All mappings are in place\")"},{"line_number":680,"context_line":"                    return"},{"line_number":681,"context_line":"        except netapp_api.NaApiError as e:"},{"line_number":682,"context_line":"            (subsystem_name, ns_uuid) \u003d self._find_mapped_namespace_subsystem("}],"source_content_type":"text/x-python","patch_set":8,"id":"118cdada_e21fb24c","line":679,"range":{"start_line":679,"start_character":20,"end_line":679,"end_character":58},"in_reply_to":"e1b6cb1f_80bc5e11","updated":"2025-04-01 17:54:48.000000000","message":"Thank you! Code is removed and approach is changed.","commit_id":"8bba04242de163bd9d2d8a0a3c1c22dbd1075881"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"abb82a20fb779e882f7396cbe071b0ac28242373","unresolved":true,"context_lines":[{"line_number":513,"context_line":""},{"line_number":514,"context_line":"            # Add driver capabilities and config info"},{"line_number":515,"context_line":"            pool[\u0027QoS_support\u0027] \u003d False"},{"line_number":516,"context_line":"            pool[\u0027multiattach\u0027] \u003d True"},{"line_number":517,"context_line":"            pool[\u0027online_extend_support\u0027] \u003d False"},{"line_number":518,"context_line":"            pool[\u0027consistencygroup_support\u0027] \u003d False"},{"line_number":519,"context_line":"            pool[\u0027consistent_group_snapshot_enabled\u0027] \u003d False"}],"source_content_type":"text/x-python","patch_set":13,"id":"07fdd447_e5947a71","line":516,"range":{"start_line":516,"start_character":18,"end_line":516,"end_character":29},"updated":"2025-04-01 18:03:08.000000000","message":"please add release note","commit_id":"462dd67a5ae8f856b519183a441ff1b5fdadf0e0"},{"author":{"_account_id":14525,"name":"Vasyl Saienko","email":"vsaienko@mirantis.com","username":"vsaienko"},"change_message_id":"abb82a20fb779e882f7396cbe071b0ac28242373","unresolved":true,"context_lines":[{"line_number":513,"context_line":""},{"line_number":514,"context_line":"            # Add driver capabilities and config info"},{"line_number":515,"context_line":"            pool[\u0027QoS_support\u0027] \u003d False"},{"line_number":516,"context_line":"            pool[\u0027multiattach\u0027] \u003d True"},{"line_number":517,"context_line":"            pool[\u0027online_extend_support\u0027] \u003d False"},{"line_number":518,"context_line":"            pool[\u0027consistencygroup_support\u0027] \u003d False"},{"line_number":519,"context_line":"            pool[\u0027consistent_group_snapshot_enabled\u0027] \u003d False"}],"source_content_type":"text/x-python","patch_set":13,"id":"3f0e1bcc_7d50f9fb","line":516,"range":{"start_line":516,"start_character":18,"end_line":516,"end_character":29},"updated":"2025-04-01 18:03:08.000000000","message":"please add release note as this fixes critical bug and adds a new functionality.","commit_id":"462dd67a5ae8f856b519183a441ff1b5fdadf0e0"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"11ade8808900de7fddd0cdebb638fe64fb25adf1","unresolved":false,"context_lines":[{"line_number":513,"context_line":""},{"line_number":514,"context_line":"            # Add driver capabilities and config info"},{"line_number":515,"context_line":"            pool[\u0027QoS_support\u0027] \u003d False"},{"line_number":516,"context_line":"            pool[\u0027multiattach\u0027] \u003d True"},{"line_number":517,"context_line":"            pool[\u0027online_extend_support\u0027] \u003d False"},{"line_number":518,"context_line":"            pool[\u0027consistencygroup_support\u0027] \u003d False"},{"line_number":519,"context_line":"            pool[\u0027consistent_group_snapshot_enabled\u0027] \u003d False"}],"source_content_type":"text/x-python","patch_set":13,"id":"66c6835f_0ff018af","line":516,"range":{"start_line":516,"start_character":18,"end_line":516,"end_character":29},"in_reply_to":"07fdd447_e5947a71","updated":"2025-04-08 09:11:44.000000000","message":"Thank you! create new release notes for this BUG.","commit_id":"462dd67a5ae8f856b519183a441ff1b5fdadf0e0"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"11ade8808900de7fddd0cdebb638fe64fb25adf1","unresolved":false,"context_lines":[{"line_number":513,"context_line":""},{"line_number":514,"context_line":"            # Add driver capabilities and config info"},{"line_number":515,"context_line":"            pool[\u0027QoS_support\u0027] \u003d False"},{"line_number":516,"context_line":"            pool[\u0027multiattach\u0027] \u003d True"},{"line_number":517,"context_line":"            pool[\u0027online_extend_support\u0027] \u003d False"},{"line_number":518,"context_line":"            pool[\u0027consistencygroup_support\u0027] \u003d False"},{"line_number":519,"context_line":"            pool[\u0027consistent_group_snapshot_enabled\u0027] \u003d False"}],"source_content_type":"text/x-python","patch_set":13,"id":"0703617b_324bec6a","line":516,"range":{"start_line":516,"start_character":18,"end_line":516,"end_character":29},"in_reply_to":"3f0e1bcc_7d50f9fb","updated":"2025-04-08 09:11:44.000000000","message":"Thank you! create new release notes for this BUG.","commit_id":"462dd67a5ae8f856b519183a441ff1b5fdadf0e0"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"b3a37cdcd17f9e578626ac1c9e682245e583625a","unresolved":true,"context_lines":[{"line_number":609,"context_line":""},{"line_number":610,"context_line":"        self.namespace_table[name].size \u003d new_size_bytes"},{"line_number":611,"context_line":""},{"line_number":612,"context_line":"    def _get_or_create_subsystem(self, host_nqn, host_os_type):"},{"line_number":613,"context_line":"        \"\"\"Checks for an subsystem for a host."},{"line_number":614,"context_line":""},{"line_number":615,"context_line":"        Creates subsystem if not already present with given host os type and"}],"source_content_type":"text/x-python","patch_set":25,"id":"910c06fe_5df217c5","line":612,"updated":"2025-08-07 20:13:19.000000000","message":"With this patch, this function is no longer called. That suggests the function and its unit tests should be deleted.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[{"line_number":609,"context_line":""},{"line_number":610,"context_line":"        self.namespace_table[name].size \u003d new_size_bytes"},{"line_number":611,"context_line":""},{"line_number":612,"context_line":"    def _get_or_create_subsystem(self, host_nqn, host_os_type):"},{"line_number":613,"context_line":"        \"\"\"Checks for an subsystem for a host."},{"line_number":614,"context_line":""},{"line_number":615,"context_line":"        Creates subsystem if not already present with given host os type and"}],"source_content_type":"text/x-python","patch_set":25,"id":"17b0d669_319c46d0","line":612,"in_reply_to":"910c06fe_5df217c5","updated":"2025-08-12 14:00:57.000000000","message":"true, removed function and UTs.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"b3a37cdcd17f9e578626ac1c9e682245e583625a","unresolved":true,"context_lines":[{"line_number":643,"context_line":"        subsystem_uuid \u003d subsystem_name \u003d n_uuid \u003d None"},{"line_number":644,"context_line":"        # Give preference to OpenStack subsystems, just use the last one if not"},{"line_number":645,"context_line":"        # present to allow unmapping old mappings that used a custom subsystem."},{"line_number":646,"context_line":"        for n_uuid, (subsystem_uuid, subsystem_name) in namespace_map.items():"},{"line_number":647,"context_line":"            if subsystem_name.startswith(na_utils.OPENSTACK_PREFIX):"},{"line_number":648,"context_line":"                break"},{"line_number":649,"context_line":""}],"source_content_type":"text/x-python","patch_set":25,"id":"f55c32d7_7fe5c5c7","line":646,"range":{"start_line":646,"start_character":12,"end_line":646,"end_character":52},"updated":"2025-08-07 20:13:19.000000000","message":"The location of these parentheses looks odd, but I don\u0027t know the format of the namespace_map.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[{"line_number":643,"context_line":"        subsystem_uuid \u003d subsystem_name \u003d n_uuid \u003d None"},{"line_number":644,"context_line":"        # Give preference to OpenStack subsystems, just use the last one if not"},{"line_number":645,"context_line":"        # present to allow unmapping old mappings that used a custom subsystem."},{"line_number":646,"context_line":"        for n_uuid, (subsystem_uuid, subsystem_name) in namespace_map.items():"},{"line_number":647,"context_line":"            if subsystem_name.startswith(na_utils.OPENSTACK_PREFIX):"},{"line_number":648,"context_line":"                break"},{"line_number":649,"context_line":""}],"source_content_type":"text/x-python","patch_set":25,"id":"414c7553_fac272f6","line":646,"range":{"start_line":646,"start_character":12,"end_line":646,"end_character":52},"in_reply_to":"f55c32d7_7fe5c5c7","updated":"2025-08-12 14:00:57.000000000","message":"yes, dictionary data-structure is created with key and tuple as value.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"b3a37cdcd17f9e578626ac1c9e682245e583625a","unresolved":true,"context_lines":[{"line_number":742,"context_line":"                path, host_nqn)"},{"line_number":743,"context_line":"            host_unmap_list.append((host_nqn, subsystem_uuid))"},{"line_number":744,"context_line":""},{"line_number":745,"context_line":"            for _host_nqn, _subsystem_uuid in host_unmap_list:"},{"line_number":746,"context_line":"                self.client.unmap_host_with_subsystem("},{"line_number":747,"context_line":"                    _host_nqn, _subsystem_uuid"},{"line_number":748,"context_line":"                )"}],"source_content_type":"text/x-python","patch_set":25,"id":"4c8aafe4_861f27c7","line":745,"updated":"2025-08-07 20:13:19.000000000","message":"Why do you need a loop? L739 creates an empty list and I think the call at L741 would add only a single element, which means you have a list of either 0 or 1 elements. The loop seems like an odd way of handling the empty list.\n\nThat also raises the next question: What happens if the call at L741 doesn\u0027t return anything because it can\u0027t find a mapped namespace?","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[{"line_number":742,"context_line":"                path, host_nqn)"},{"line_number":743,"context_line":"            host_unmap_list.append((host_nqn, subsystem_uuid))"},{"line_number":744,"context_line":""},{"line_number":745,"context_line":"            for _host_nqn, _subsystem_uuid in host_unmap_list:"},{"line_number":746,"context_line":"                self.client.unmap_host_with_subsystem("},{"line_number":747,"context_line":"                    _host_nqn, _subsystem_uuid"},{"line_number":748,"context_line":"                )"}],"source_content_type":"text/x-python","patch_set":25,"id":"85c2e47e_9c2cb4b8","line":745,"in_reply_to":"4c8aafe4_861f27c7","updated":"2025-08-12 14:00:57.000000000","message":"Thank you! for detailed analysis. logic is redone to remove loop and address your concerns.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"3975a3e40cb486dbc88be65dbd505b91f42172d7","unresolved":true,"context_lines":[{"line_number":726,"context_line":"        if subsystem_uuid:"},{"line_number":727,"context_line":"            self.client.unmap_host_with_subsystem(host_nqn, subsystem_uuid)"},{"line_number":728,"context_line":"        else:"},{"line_number":729,"context_line":"            LOG.debug(\"Nothing to unmap host_nqn is missing: %s, %s\","},{"line_number":730,"context_line":"                      path, host_nqn"},{"line_number":731,"context_line":"                      )"},{"line_number":732,"context_line":""}],"source_content_type":"text/x-python","patch_set":27,"id":"3e45350c_4d501e67","line":729,"updated":"2025-08-14 13:00:03.000000000","message":"I don\u0027t think the is a correct message (it appears to be copy of L720). I think you mean no mapped subsystem was found for the host_nqn.","commit_id":"8f3d3477c9e699428a0a531c867d41d157679dc3"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"9165d592604c6109e2e0049ac0fd460071685e84","unresolved":false,"context_lines":[{"line_number":726,"context_line":"        if subsystem_uuid:"},{"line_number":727,"context_line":"            self.client.unmap_host_with_subsystem(host_nqn, subsystem_uuid)"},{"line_number":728,"context_line":"        else:"},{"line_number":729,"context_line":"            LOG.debug(\"Nothing to unmap host_nqn is missing: %s, %s\","},{"line_number":730,"context_line":"                      path, host_nqn"},{"line_number":731,"context_line":"                      )"},{"line_number":732,"context_line":""}],"source_content_type":"text/x-python","patch_set":27,"id":"bb410612_d29108e2","line":729,"in_reply_to":"3e45350c_4d501e67","updated":"2025-08-14 18:49:29.000000000","message":"Thank you! updated to reflect there is no mapping between host_nqn and namespance.","commit_id":"8f3d3477c9e699428a0a531c867d41d157679dc3"},{"author":{"_account_id":38059,"name":"Anoop Kumar Shukla","display_name":"Anoop Shukla","email":"anoop.shukla@netapp.com","username":"anoop2","status":"NetApp"},"change_message_id":"8fea417afe7e6c0ddf676e5b482f019781b0912e","unresolved":true,"context_lines":[{"line_number":717,"context_line":"        \"\"\"Unmaps a namespace from given host.\"\"\""},{"line_number":718,"context_line":""},{"line_number":719,"context_line":"        if not host_nqn:"},{"line_number":720,"context_line":"            LOG.debug(\"Nothing to unmap - host_nqn is missing: %s\", path)"},{"line_number":721,"context_line":"            return"},{"line_number":722,"context_line":""},{"line_number":723,"context_line":"        (subsystem_uuid, _, _) \u003d self._find_mapped_namespace_subsystem("}],"source_content_type":"text/x-python","patch_set":31,"id":"4c995520_f453b162","line":720,"updated":"2025-08-28 15:45:08.000000000","message":"log.warn?","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"fa190a1072cc55e96d64d5fcc7d43a6bcd80c6cb","unresolved":false,"context_lines":[{"line_number":717,"context_line":"        \"\"\"Unmaps a namespace from given host.\"\"\""},{"line_number":718,"context_line":""},{"line_number":719,"context_line":"        if not host_nqn:"},{"line_number":720,"context_line":"            LOG.debug(\"Nothing to unmap - host_nqn is missing: %s\", path)"},{"line_number":721,"context_line":"            return"},{"line_number":722,"context_line":""},{"line_number":723,"context_line":"        (subsystem_uuid, _, _) \u003d self._find_mapped_namespace_subsystem("}],"source_content_type":"text/x-python","patch_set":31,"id":"ae7a8c5f_3335bf11","line":720,"in_reply_to":"4c995520_f453b162","updated":"2025-08-28 18:56:00.000000000","message":"update to log.warning","commit_id":"ab6072a4fb3088da0501a9185487c09df92bbefc"}],"doc/source/reference/support-matrix.ini":[{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"f57bd07e00e09d4d5288b7839f72ed9dd57ea058","unresolved":true,"context_lines":[{"line_number":457,"context_line":"driver.macrosan\u003dcomplete"},{"line_number":458,"context_line":"driver.nec\u003dcomplete"},{"line_number":459,"context_line":"driver.nec_v\u003dmissing"},{"line_number":460,"context_line":"driver.netapp_ontap_nvme_tcp\u003dmissing"},{"line_number":461,"context_line":"driver.netapp_ontap_iscsi_fc\u003dcomplete"},{"line_number":462,"context_line":"driver.netapp_ontap_nfs\u003dcomplete"},{"line_number":463,"context_line":"driver.netapp_solidfire\u003dcomplete"}],"source_content_type":"text/x-properties","patch_set":14,"id":"8b7caa32_27a37dd6","line":460,"updated":"2025-06-26 17:50:37.000000000","message":"How is this related to the proposed change? The commit message makes no reference to nvme over tcp support. If this is just an unrelated documentation issue, we would need to propose another patch for fixing it instead.","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"37a1e0bd059183fecdacccc53fcb9cc9206c23e8","unresolved":false,"context_lines":[{"line_number":457,"context_line":"driver.macrosan\u003dcomplete"},{"line_number":458,"context_line":"driver.nec\u003dcomplete"},{"line_number":459,"context_line":"driver.nec_v\u003dmissing"},{"line_number":460,"context_line":"driver.netapp_ontap_nvme_tcp\u003dmissing"},{"line_number":461,"context_line":"driver.netapp_ontap_iscsi_fc\u003dcomplete"},{"line_number":462,"context_line":"driver.netapp_ontap_nfs\u003dcomplete"},{"line_number":463,"context_line":"driver.netapp_solidfire\u003dcomplete"}],"source_content_type":"text/x-properties","patch_set":14,"id":"e1e5e1aa_ea0580ec","line":460,"in_reply_to":"8b7caa32_27a37dd6","updated":"2025-07-03 15:55:52.000000000","message":"Done","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"}],"releasenotes/notes/bug-2078968-fix-nvme-namespace-mapping-failed-during-live-migration-bbd26bb157b076bf.yaml":[{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"f57bd07e00e09d4d5288b7839f72ed9dd57ea058","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"prelude:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Addressed limitations in NVMe multi-attach workflows by changing the"},{"line_number":5,"context_line":"    architecture to map multiple hosts to a single subsystem and ensuring"},{"line_number":6,"context_line":"    a single subsystem-to-namespace mapping. This resolves issues where"},{"line_number":7,"context_line":"    multiple subsystems could not map to a single namespace, unlike iSCSI,"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"2329fbae_915706bc","line":4,"updated":"2025-06-26 17:50:37.000000000","message":"The change needs to be mentioned with some context in the prelude and upgrade sections. Otherwise, it would be included among other updates without any context regarding the specific architectural change.\n\nSee docs for reference:\nhttps://docs.openstack.org/releasenotes/cinder/2025.1.html#upgrade-notes","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"37a1e0bd059183fecdacccc53fcb9cc9206c23e8","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"prelude:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Addressed limitations in NVMe multi-attach workflows by changing the"},{"line_number":5,"context_line":"    architecture to map multiple hosts to a single subsystem and ensuring"},{"line_number":6,"context_line":"    a single subsystem-to-namespace mapping. This resolves issues where"},{"line_number":7,"context_line":"    multiple subsystems could not map to a single namespace, unlike iSCSI,"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"142afb6d_f7eb978a","line":4,"in_reply_to":"2329fbae_915706bc","updated":"2025-07-03 15:55:52.000000000","message":"Done","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"f57bd07e00e09d4d5288b7839f72ed9dd57ea058","unresolved":true,"context_lines":[{"line_number":8,"context_line":"    which allows multiple iGroups to map to a single LUN."},{"line_number":9,"context_line":"upgrade:"},{"line_number":10,"context_line":"  - |"},{"line_number":11,"context_line":"    This architectural change is not backward compatible because the previous"},{"line_number":12,"context_line":"    implementation relied on an iSCSI-based approach, whereas NVMe in ONTAP"},{"line_number":13,"context_line":"    functions differently, which has directly impacted the live migration"},{"line_number":14,"context_line":"    feature.Need mitigate these incompatible VMs by taking backup and"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"7caaf6d6_666874ac","line":11,"updated":"2025-06-26 17:50:37.000000000","message":"The change needs to be mentioned with some context in the prelude and upgrade sections. Otherwise, it would be included among other updates without any context regarding the specific architectural change.\n\nSee docs for reference:\nhttps://docs.openstack.org/releasenotes/cinder/2025.1.html#upgrade-notes","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"37a1e0bd059183fecdacccc53fcb9cc9206c23e8","unresolved":false,"context_lines":[{"line_number":8,"context_line":"    which allows multiple iGroups to map to a single LUN."},{"line_number":9,"context_line":"upgrade:"},{"line_number":10,"context_line":"  - |"},{"line_number":11,"context_line":"    This architectural change is not backward compatible because the previous"},{"line_number":12,"context_line":"    implementation relied on an iSCSI-based approach, whereas NVMe in ONTAP"},{"line_number":13,"context_line":"    functions differently, which has directly impacted the live migration"},{"line_number":14,"context_line":"    feature.Need mitigate these incompatible VMs by taking backup and"}],"source_content_type":"text/x-yaml","patch_set":14,"id":"7b47957e_de24557f","line":11,"in_reply_to":"7caaf6d6_666874ac","updated":"2025-07-03 15:55:52.000000000","message":"Done","commit_id":"e479fa977d0d22765288f62d529eb1e327f4af62"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"b3a37cdcd17f9e578626ac1c9e682245e583625a","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":25,"id":"4623f1c0_f6d65253","updated":"2025-08-07 20:13:19.000000000","message":"I still feel like this release note needs to be reconsidered. As I mentioned before, it reads like cinder\u0027s entire NVMe architecture is changing, and that it\u0027s a breaking change.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":25,"id":"62272961_032510df","in_reply_to":"4623f1c0_f6d65253","updated":"2025-08-12 14:00:57.000000000","message":"Thank you! modified text to indicate feature is NetApp specific.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"b3a37cdcd17f9e578626ac1c9e682245e583625a","unresolved":true,"context_lines":[{"line_number":54,"context_line":"    To upgrade without disrupting existing mappings, the only supported"},{"line_number":55,"context_line":"    path is:"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    * Take backup of all volumes using the old NVMe architecture"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    * Upgrade OpenStack to the version with the new architecture"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    * Restore volumes using the new many-to-one subsystem mapping model"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    This approach ensures data integrity while enabling the improved"},{"line_number":64,"context_line":"    multi-attach and QoS capabilities of the new architecture."},{"line_number":65,"context_line":"fixes:"}],"source_content_type":"text/x-yaml","patch_set":25,"id":"be0b43f1_9b258399","line":62,"range":{"start_line":57,"start_character":1,"end_line":62,"end_character":1},"updated":"2025-08-07 20:13:19.000000000","message":"Ouch, this will be painful for cloud admins to perform as part of the upgrade.\n- What happens if they fail to backup and restore volumes? Is the data lost?\n- Would disconnecting and reconnecting volume attachments not be sufficient?","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[{"line_number":54,"context_line":"    To upgrade without disrupting existing mappings, the only supported"},{"line_number":55,"context_line":"    path is:"},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"    * Take backup of all volumes using the old NVMe architecture"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    * Upgrade OpenStack to the version with the new architecture"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    * Restore volumes using the new many-to-one subsystem mapping model"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"    This approach ensures data integrity while enabling the improved"},{"line_number":64,"context_line":"    multi-attach and QoS capabilities of the new architecture."},{"line_number":65,"context_line":"fixes:"}],"source_content_type":"text/x-yaml","patch_set":25,"id":"fc0b1f73_dd1bee43","line":62,"range":{"start_line":57,"start_character":1,"end_line":62,"end_character":1},"in_reply_to":"be0b43f1_9b258399","updated":"2025-08-12 14:00:57.000000000","message":"Data won\u0027t be lost... old mapping architecture and new mapping architecture is different and it is not possible to detect all old mappings and re-map to new architecture is not possible. Backup and restore will create new mapping with host. Yes, disconnecting and reconnect will map back with new architecture. we need to test this scenario.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"b3a37cdcd17f9e578626ac1c9e682245e583625a","unresolved":true,"context_lines":[{"line_number":67,"context_line":"    `Bug #2077643 \u003chttps://bugs.launchpad.net/cinder/+bug/2078968\u003e`_: Fixed"},{"line_number":68,"context_line":"    NVMe namespace mapping fails during VM migration with \"Namespace is already"},{"line_number":69,"context_line":"    mapped to subsystem. To fix this issue we are making architecture changes"},{"line_number":70,"context_line":"    to support multiple hosts attaching to single namespace. To reflect this"},{"line_number":71,"context_line":"    capability by enabling the multi-attach flag."}],"source_content_type":"text/x-yaml","patch_set":25,"id":"4ab4910c_e7bc4913","line":71,"range":{"start_line":70,"start_character":60,"end_line":71,"end_character":49},"updated":"2025-08-07 20:13:19.000000000","message":"I think you can remove this sentence.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"3b41cbc3dee29cc29f6bb8b0cc24cc6b8aaf6bc2","unresolved":false,"context_lines":[{"line_number":67,"context_line":"    `Bug #2077643 \u003chttps://bugs.launchpad.net/cinder/+bug/2078968\u003e`_: Fixed"},{"line_number":68,"context_line":"    NVMe namespace mapping fails during VM migration with \"Namespace is already"},{"line_number":69,"context_line":"    mapped to subsystem. To fix this issue we are making architecture changes"},{"line_number":70,"context_line":"    to support multiple hosts attaching to single namespace. To reflect this"},{"line_number":71,"context_line":"    capability by enabling the multi-attach flag."}],"source_content_type":"text/x-yaml","patch_set":25,"id":"2adba1d4_82d398c0","line":71,"range":{"start_line":70,"start_character":60,"end_line":71,"end_character":49},"in_reply_to":"4ab4910c_e7bc4913","updated":"2025-08-12 14:00:57.000000000","message":"Thank you! Yes, removed suggested sentence.","commit_id":"2724f2aaa991eaafe6138a3ff3ef343c6b24ae37"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"3975a3e40cb486dbc88be65dbd505b91f42172d7","unresolved":true,"context_lines":[{"line_number":26,"context_line":"    translate well to NVMe\u0027s operational model."},{"line_number":27,"context_line":"upgrade:"},{"line_number":28,"context_line":"  - |"},{"line_number":29,"context_line":"    Breaking Change: NVMe Subsystem Architecture Redesign"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    This architectural change is not backward compatible due to fundamental"},{"line_number":32,"context_line":"    differences in how NVMe subsystem-to-namespace mappings are handled."}],"source_content_type":"text/x-yaml","patch_set":27,"id":"c6ec8aa0_b63902c0","line":29,"updated":"2025-08-14 13:00:03.000000000","message":"Upgrade notes are grouped in their own section when release notes are published, and so it\u0027s critical that you mention the \"breaking change\" is specific to just NetApp.","commit_id":"8f3d3477c9e699428a0a531c867d41d157679dc3"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"9165d592604c6109e2e0049ac0fd460071685e84","unresolved":false,"context_lines":[{"line_number":26,"context_line":"    translate well to NVMe\u0027s operational model."},{"line_number":27,"context_line":"upgrade:"},{"line_number":28,"context_line":"  - |"},{"line_number":29,"context_line":"    Breaking Change: NVMe Subsystem Architecture Redesign"},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"    This architectural change is not backward compatible due to fundamental"},{"line_number":32,"context_line":"    differences in how NVMe subsystem-to-namespace mappings are handled."}],"source_content_type":"text/x-yaml","patch_set":27,"id":"c3be93c8_0fb5ba7c","line":29,"in_reply_to":"c6ec8aa0_b63902c0","updated":"2025-08-14 18:49:29.000000000","message":"Thank you! Updated to reflect breaking changes are specific to NetApp.","commit_id":"8f3d3477c9e699428a0a531c867d41d157679dc3"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"3975a3e40cb486dbc88be65dbd505b91f42172d7","unresolved":true,"context_lines":[{"line_number":50,"context_line":"    * QoS policies applied at different subsystem levels cannot be"},{"line_number":51,"context_line":"      automatically reconciled"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    Required Upgrade Path:"},{"line_number":54,"context_line":"    To upgrade without disrupting existing mappings, the only supported"},{"line_number":55,"context_line":"    path is:"},{"line_number":56,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":27,"id":"c29d6569_d64dee11","line":53,"updated":"2025-08-14 13:00:03.000000000","message":"You mentioned it\u0027s possible that detaching and reattaching the volume would work, and I think this needs to be explored. That path would be HIGHLY preferred over forcing a full backup/restore. Either way, it will affect existing workloads, but detach/reattach will always be quicker.","commit_id":"8f3d3477c9e699428a0a531c867d41d157679dc3"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"352a9d6bbd7b19817f2c247d97fcb922bcd47f6f","unresolved":true,"context_lines":[{"line_number":50,"context_line":"    * QoS policies applied at different subsystem levels cannot be"},{"line_number":51,"context_line":"      automatically reconciled"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    Required Upgrade Path:"},{"line_number":54,"context_line":"    To upgrade without disrupting existing mappings, the only supported"},{"line_number":55,"context_line":"    path is:"},{"line_number":56,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":27,"id":"90dd5f1a_58761cc8","line":53,"in_reply_to":"11ccd9f2_6cbe8890","updated":"2025-08-18 16:03:03.000000000","message":"Oh! I thought the \"breaking change\" was limited to the cinder driver, but it sounds like the NetApp appliance is also affected? Or, is it HOW the cinder driver creates volumes on the backend?\n\nIt seems like new volumes will be created with the proper NVMe mapping, and the issue is what to do about existing volumes that were created with the old mapping that can\u0027t support live migration. Is that correct?\n\nIt\u0027s a big deal if all existing NVMe volumes are sort of broken, and the admin\u0027s only recourse is to shut down all workloads and backup/restore to essentially create new volumes. If there\u0027s any chance this can be avoided by utilizing NetApp\u0027s support then I think this could be highlighted.\n\nThis is another instance where I\u0027m curious how the core team feels about the situation.","commit_id":"8f3d3477c9e699428a0a531c867d41d157679dc3"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"fea51b483bbf0e180795c41b803334821c86ed0c","unresolved":false,"context_lines":[{"line_number":50,"context_line":"    * QoS policies applied at different subsystem levels cannot be"},{"line_number":51,"context_line":"      automatically reconciled"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    Required Upgrade Path:"},{"line_number":54,"context_line":"    To upgrade without disrupting existing mappings, the only supported"},{"line_number":55,"context_line":"    path is:"},{"line_number":56,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":27,"id":"f3d567dd_f03e3d83","line":53,"in_reply_to":"90dd5f1a_58761cc8","updated":"2025-08-19 14:48:08.000000000","message":"Thank you! Alan, Impact is due to how Cinder driver creates new mapping in NetApp appliance. No data loss from NetApp appliance.\n\nYes, old mappings and new mapping can co-exist. only limitation is when admin perform live migration. during live migration Cinder driver can\u0027t perform scanning on entire NetApp appliance and direct type of mapping and multi attach fails due to old style mapping. \n\nAdmin don\u0027t have to shut down all workloads. old and new mappings can co-exist. during live migration only current workload is impacted other workloads remain intact. Before live migrating old workload. Admin can follow suggested backup and restore steps. If live migration fails due to old mapping... customer can reach to NetApp support to restore mapping in suggested new way.","commit_id":"8f3d3477c9e699428a0a531c867d41d157679dc3"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"9165d592604c6109e2e0049ac0fd460071685e84","unresolved":false,"context_lines":[{"line_number":50,"context_line":"    * QoS policies applied at different subsystem levels cannot be"},{"line_number":51,"context_line":"      automatically reconciled"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"    Required Upgrade Path:"},{"line_number":54,"context_line":"    To upgrade without disrupting existing mappings, the only supported"},{"line_number":55,"context_line":"    path is:"},{"line_number":56,"context_line":""}],"source_content_type":"text/x-yaml","patch_set":27,"id":"11ccd9f2_6cbe8890","line":53,"in_reply_to":"c29d6569_d64dee11","updated":"2025-08-14 18:49:29.000000000","message":"Thank you! Alan, during OpenStack upgrade detach will happen at NetApp filer(i.e. Please note my earlier conversation about detach and attach at NetApp storage not from VM to Storage). Also note there is no storage loss. To come out of this situation... User need to be expert at NVMe and NetApp storage and he should be aware of old and new architecture changes. Now, he need to reconstruct new mapping between host_nqn and namespace present in NetApp storage with new architecture. These user actions are difficult and involved at protocol and storage level. Considering these points please suggest way forward.","commit_id":"8f3d3477c9e699428a0a531c867d41d157679dc3"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"352a9d6bbd7b19817f2c247d97fcb922bcd47f6f","unresolved":true,"context_lines":[{"line_number":9,"context_line":"    dedicated subsystem, and multiple subsystems would map to a single"},{"line_number":10,"context_line":"    namespace. This approach created two major issues:"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"    * QoS Limitations**: Since QoS policies are applied at the subsystem"},{"line_number":13,"context_line":"      level rather than the namespace level, having multiple subsystems"},{"line_number":14,"context_line":"      per namespace made it impossible to enforce consistent QoS across"},{"line_number":15,"context_line":"      all host connections to the same volume."}],"source_content_type":"text/x-yaml","patch_set":28,"id":"963db7f5_c28b4c15","line":12,"range":{"start_line":12,"start_character":21,"end_line":12,"end_character":23},"updated":"2025-08-18 16:03:03.000000000","message":"I don\u0027t know what these two \"**\" are meant to convey, but they appear verbatim in the rendered release notes [1]\n\n[1] https://39aaccb8a3d6a93084df-3dc850fa9ec7accfecbd9e8082636c07.ssl.cf2.rackcdn.com/openstack/4060293046f049f8816de7834170826c/docs/unreleased.html\n\nAlso, I\u0027m starting to question whether a prelude section is appropriate given that it doesn\u0027t pertain to cinder in general. If you search the release notes directory you\u0027ll see the prelude section is rarely used, and the upgrade section should suffice. I\u0027m curious how the core team feels about this.","commit_id":"f7702a53e1fe408759eb1c01106e89237da70a2b"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"fea51b483bbf0e180795c41b803334821c86ed0c","unresolved":false,"context_lines":[{"line_number":9,"context_line":"    dedicated subsystem, and multiple subsystems would map to a single"},{"line_number":10,"context_line":"    namespace. This approach created two major issues:"},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"    * QoS Limitations**: Since QoS policies are applied at the subsystem"},{"line_number":13,"context_line":"      level rather than the namespace level, having multiple subsystems"},{"line_number":14,"context_line":"      per namespace made it impossible to enforce consistent QoS across"},{"line_number":15,"context_line":"      all host connections to the same volume."}],"source_content_type":"text/x-yaml","patch_set":28,"id":"f25c4a53_3fa9f571","line":12,"range":{"start_line":12,"start_character":21,"end_line":12,"end_character":23},"in_reply_to":"963db7f5_c28b4c15","updated":"2025-08-19 14:48:08.000000000","message":"Thank you! Alan, yes, ** doesn\u0027t work properly in YAML literal blocks. \"**\" added for emphasis. Removed entire prelude section merged with upgrade section.","commit_id":"f7702a53e1fe408759eb1c01106e89237da70a2b"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"f11f2171768340eff3e093b025b16acccf9b2df0","unresolved":true,"context_lines":[{"line_number":30,"context_line":"    handled. Live migration of existing mappings is not technically feasible."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    Required Upgrade Path:"},{"line_number":33,"context_line":"    "},{"line_number":34,"context_line":"    * Take backup of all volumes using the old NVMe architecture"},{"line_number":35,"context_line":"    * Upgrade OpenStack to the version with the new architecture"},{"line_number":36,"context_line":"    * Restore volumes using the new many-to-one subsystem mapping model"}],"source_content_type":"text/x-yaml","patch_set":29,"id":"e554c183_a600a7bb","line":33,"updated":"2025-08-20 15:31:52.000000000","message":"Remove this whitespace.","commit_id":"c9485caf9b6920b744ece1be9453121edbd5496f"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"262464dca28bf15502560ffbdc387c5c57f6c636","unresolved":false,"context_lines":[{"line_number":30,"context_line":"    handled. Live migration of existing mappings is not technically feasible."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"    Required Upgrade Path:"},{"line_number":33,"context_line":"    "},{"line_number":34,"context_line":"    * Take backup of all volumes using the old NVMe architecture"},{"line_number":35,"context_line":"    * Upgrade OpenStack to the version with the new architecture"},{"line_number":36,"context_line":"    * Restore volumes using the new many-to-one subsystem mapping model"}],"source_content_type":"text/x-yaml","patch_set":29,"id":"7c618965_4e71e932","line":33,"in_reply_to":"e554c183_a600a7bb","updated":"2025-08-21 12:20:05.000000000","message":"Thank you! removed white space.","commit_id":"c9485caf9b6920b744ece1be9453121edbd5496f"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"f11f2171768340eff3e093b025b16acccf9b2df0","unresolved":true,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"fixes:"},{"line_number":45,"context_line":"  - |"},{"line_number":46,"context_line":"    `Bug #2078968 \u003chttps://bugs.launchpad.net/cinder/+bug/2078968\u003e`_: Fixed"},{"line_number":47,"context_line":"    NVMe namespace mapping fails during VM migration with \"Namespace is already"},{"line_number":48,"context_line":"    mapped to subsystem\". Implemented architecture changes to support multiple"},{"line_number":49,"context_line":"    hosts attaching to single namespace through shared subsystem model."}],"source_content_type":"text/x-yaml","patch_set":29,"id":"5334ad8a_6c1f47e7","line":46,"updated":"2025-08-20 15:31:52.000000000","message":"-1: This needs a \"NetApp Driver \" prefix. See the current release notes [1] and you\u0027ll see how other NetApp bug fixes are rendered. The prefix is important because otherwise it\u0027s unclear this fixes a driver bug.","commit_id":"c9485caf9b6920b744ece1be9453121edbd5496f"},{"author":{"_account_id":36171,"name":"jayaanand borra","display_name":"jayaanand borra","email":"jayaanand.borra@netapp.com","username":"jayaanan","status":"netapp"},"change_message_id":"262464dca28bf15502560ffbdc387c5c57f6c636","unresolved":false,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"fixes:"},{"line_number":45,"context_line":"  - |"},{"line_number":46,"context_line":"    `Bug #2078968 \u003chttps://bugs.launchpad.net/cinder/+bug/2078968\u003e`_: Fixed"},{"line_number":47,"context_line":"    NVMe namespace mapping fails during VM migration with \"Namespace is already"},{"line_number":48,"context_line":"    mapped to subsystem\". Implemented architecture changes to support multiple"},{"line_number":49,"context_line":"    hosts attaching to single namespace through shared subsystem model."}],"source_content_type":"text/x-yaml","patch_set":29,"id":"69aeef91_f6410a4f","line":46,"in_reply_to":"242892d2_9b022f9e","updated":"2025-08-21 12:20:05.000000000","message":"Thank you! Alan for direction, Updated prefix NetApp Driver.","commit_id":"c9485caf9b6920b744ece1be9453121edbd5496f"},{"author":{"_account_id":21129,"name":"Alan Bishop","email":"abishopsweng@gmail.com","username":"ASBishop","status":"ex Red Hat"},"change_message_id":"f5855ce58dddb63b96b69bf1a8687409917d1ef0","unresolved":true,"context_lines":[{"line_number":43,"context_line":""},{"line_number":44,"context_line":"fixes:"},{"line_number":45,"context_line":"  - |"},{"line_number":46,"context_line":"    `Bug #2078968 \u003chttps://bugs.launchpad.net/cinder/+bug/2078968\u003e`_: Fixed"},{"line_number":47,"context_line":"    NVMe namespace mapping fails during VM migration with \"Namespace is already"},{"line_number":48,"context_line":"    mapped to subsystem\". Implemented architecture changes to support multiple"},{"line_number":49,"context_line":"    hosts attaching to single namespace through shared subsystem model."}],"source_content_type":"text/x-yaml","patch_set":29,"id":"242892d2_9b022f9e","line":46,"in_reply_to":"5334ad8a_6c1f47e7","updated":"2025-08-20 15:32:32.000000000","message":"See https://eddc2f34a262a7fd8f98-de6b79a0bbc85dd849a2bc7008d89fe0.ssl.cf1.rackcdn.com/openstack/a49d494edcdf4a6fa42a7efc557b16cb/docs/unreleased.html","commit_id":"c9485caf9b6920b744ece1be9453121edbd5496f"}]}
