)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"f652b8eccf1a8e411c2877c8cf7a0914db78ead0","unresolved":true,"context_lines":[{"line_number":20,"context_line":"Solution:"},{"line_number":21,"context_line":"Added names to the constants"},{"line_number":22,"context_line":"and versions"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Change-Id: I75059630410a9eea345ddf3059650aa05c76582d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"ada64453_d105ab99","line":23,"updated":"2023-04-14 06:20:59.000000000","message":"nit.\nCloses-Bug: #2015722","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":35910,"name":"Poojan Shah","display_name":"Poojan Shah","email":"poojan.shah@ibm.com","username":"poojan98"},"change_message_id":"28185b54db80fb4f8ce7722d2d1dcd3ffdd809b7","unresolved":false,"context_lines":[{"line_number":20,"context_line":"Solution:"},{"line_number":21,"context_line":"Added names to the constants"},{"line_number":22,"context_line":"and versions"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Change-Id: I75059630410a9eea345ddf3059650aa05c76582d"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"809a11ca_88cf5cbb","line":23,"in_reply_to":"ada64453_d105ab99","updated":"2023-04-14 09:30:02.000000000","message":"Done","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"da1ac01cc33c03652838d140e73d8c7249593d36","unresolved":true,"context_lines":[{"line_number":10,"context_line":"[Storage Virtualize Family]Whoever"},{"line_number":11,"context_line":"looks at the code needs to"},{"line_number":12,"context_line":"search on the internet for what"},{"line_number":13,"context_line":"\u0027CMMVC5754E\u0027 means. So it\u0027s"},{"line_number":14,"context_line":"a magic number."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"So instead of Error constant \u0027CMMVC5754E\u0027,"},{"line_number":17,"context_line":"we can assign a more significant name"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"95160f4b_4960a2c8","line":14,"range":{"start_line":13,"start_character":21,"end_line":14,"end_character":15},"updated":"2023-04-17 13:19:28.000000000","message":"nit: it\u0027s an opaque string","commit_id":"7b1da266bbb9bb1295351a534edb4603b4fecd5a"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"3a7a8d0e3c59eded69aabe2972ceeb9a6b25dd1d","unresolved":false,"context_lines":[{"line_number":10,"context_line":"[Storage Virtualize Family]Whoever"},{"line_number":11,"context_line":"looks at the code needs to"},{"line_number":12,"context_line":"search on the internet for what"},{"line_number":13,"context_line":"\u0027CMMVC5754E\u0027 means. So it\u0027s"},{"line_number":14,"context_line":"a magic number."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"So instead of Error constant \u0027CMMVC5754E\u0027,"},{"line_number":17,"context_line":"we can assign a more significant name"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"7b3a9a35_743514b7","line":14,"range":{"start_line":13,"start_character":21,"end_line":14,"end_character":15},"in_reply_to":"95160f4b_4960a2c8","updated":"2025-06-03 10:37:12.000000000","message":"Done","commit_id":"7b1da266bbb9bb1295351a534edb4603b4fecd5a"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"f652b8eccf1a8e411c2877c8cf7a0914db78ead0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"cd087279_eeb701c4","updated":"2023-04-14 06:20:59.000000000","message":"Few comments inline.","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":35193,"name":"Kumar Kanishka","email":"Kumar.Kanishka@ibm.com","username":"kumarkanishka"},"change_message_id":"54c7f93066f31cce20375e297af9e6dfdb25ade0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"c41ab19d_87132f21","updated":"2023-04-11 11:16:37.000000000","message":"LGTM","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":34201,"name":"Mounika Sreeram","email":"sreeram.mounika@ibm.com","username":"sreerammounika"},"change_message_id":"7a65fc328fca155e4127a8c4dbdc0ff5dc88e1ba","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"b4948055_fd3defd6","updated":"2023-04-13 07:49:56.000000000","message":"run-IBM Storage CI","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":35910,"name":"Poojan Shah","display_name":"Poojan Shah","email":"poojan.shah@ibm.com","username":"poojan98"},"change_message_id":"28185b54db80fb4f8ce7722d2d1dcd3ffdd809b7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"8dc79e3e_ce342045","updated":"2023-04-14 09:30:02.000000000","message":"run-IBM Storage CI","commit_id":"f4235cc172372dff28a98e8d710d207d5c869a40"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"da1ac01cc33c03652838d140e73d8c7249593d36","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"6f74764f_d3bc4359","updated":"2023-04-17 13:19:28.000000000","message":"Lines 554-556 in cinder/volume/drivers/ibm/storwize_svc/storwize_svc_common.py in the current code illustrates why this is a good idea!  A few things to address noted inline.","commit_id":"7b1da266bbb9bb1295351a534edb4603b4fecd5a"},{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"9a91bc6609a2aff702c20d784699268c4ad01f2a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"1de31808_cbab1e89","updated":"2023-04-17 04:17:52.000000000","message":"My comments have been addressed.\nIBM Storage CI and Zuul have passed.","commit_id":"7b1da266bbb9bb1295351a534edb4603b4fecd5a"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"d6196cd0cf0bd0c2e13285739d69432ecd95a2dc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"375cb8b3_9b0d22bf","updated":"2023-04-19 02:11:03.000000000","message":"I like this change.  A few minor points noted inline.","commit_id":"33633b6a138207e9f95214850e46797e179f1192"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"af5dc480f98eab0a10cf8cf6cd2b47bbd3982ac3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"70731f1e_56e63986","updated":"2025-06-05 06:23:38.000000000","message":"recheck","commit_id":"197e6e290480a4563832ff88005b0239f7f40ca8"},{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"01bc29893e0e3d14aa961d416e6d0f0cc3228599","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"e6d09ae3_a9afdb3f","updated":"2025-06-23 12:13:27.000000000","message":"1] If another patchset is submitted, the commit message can be formatted a bit.\n2] on this patch, the IBM Storage CI passed in Apr 2023. Can it be executed again please.\n3] minor query inline","commit_id":"9d63f971d878c2ca6adeee8aed073e470da3d6b3"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"ca1290d5925b5cf7bda5b00ed505d76dc387f9bd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"1cf4307a_424dfd2b","updated":"2025-06-05 10:22:38.000000000","message":"recheck","commit_id":"9d63f971d878c2ca6adeee8aed073e470da3d6b3"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"c79e70b2e8f456b994cf9e52dcb621c6ebd3de0c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"d82a0858_b662534b","in_reply_to":"e6d09ae3_a9afdb3f","updated":"2025-06-23 13:43:27.000000000","message":"yes, CI is failing due to some lab firewall issue. It will be executed again once lab issues are fixed.","commit_id":"9d63f971d878c2ca6adeee8aed073e470da3d6b3"},{"author":{"_account_id":37470,"name":"Dakshina Purohit","display_name":"Dakshina","email":"Dakshina.Purohit@ibm.com","username":"dakshina"},"change_message_id":"f667b7bdb8c1b20a60316fc83d47a995685aebdb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"02214406_ffaa4b0d","updated":"2025-07-01 10:20:45.000000000","message":"LGTM","commit_id":"044a113684fb73a0498b772586e290004ed2003d"},{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"dd67e198ab146bd6bc0a3bfbb4e55b53b4ad5ae3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"81e69a6a_12f99052","updated":"2025-06-24 10:53:15.000000000","message":"My comments have been addressed. Will wait for IBM Storage CI and Zuul to get passed.","commit_id":"044a113684fb73a0498b772586e290004ed2003d"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"59551ca8ed4808ec1b13d0e03fc0c529cce11e9e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"0fbc1f2d_6ef2f921","updated":"2025-08-07 06:56:37.000000000","message":"recheck","commit_id":"044a113684fb73a0498b772586e290004ed2003d"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"7c033b98c15df7ec38809c82f09ac794a0f2fbd1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"1e0c8ae2_60362893","updated":"2025-08-05 06:39:56.000000000","message":"recheck","commit_id":"044a113684fb73a0498b772586e290004ed2003d"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"3ab9c4c5e1c999b987f137ee93edeaa5da0e1bdb","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"486dc053_054933d7","updated":"2025-07-15 15:07:43.000000000","message":"recheck","commit_id":"044a113684fb73a0498b772586e290004ed2003d"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"5ef17742490d1140ba67122280f4d71161be6c2f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"76e6b33f_32a39c51","updated":"2025-07-09 14:10:53.000000000","message":"recheck","commit_id":"044a113684fb73a0498b772586e290004ed2003d"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"78e58cc6586a72f020ae88068860b5aaf2bf9a95","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"a839b422_ef6e4fd1","updated":"2025-06-25 04:06:13.000000000","message":"recheck","commit_id":"044a113684fb73a0498b772586e290004ed2003d"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"a6adc8b804ca9a6491ad40663aee38ea31d3fdbf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"3c8c2d99_6c6f30a8","updated":"2025-07-25 01:32:15.000000000","message":"run-IBM-CI","commit_id":"044a113684fb73a0498b772586e290004ed2003d"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"1433b046591b7617215ef1c7125545a9e0896313","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"8e6fdea7_967f3da0","updated":"2025-07-18 13:46:15.000000000","message":"run-IBM-CI","commit_id":"044a113684fb73a0498b772586e290004ed2003d"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"e9b9067634bb08cab7124a2fe74ff177a6119919","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"d5498824_ab35a169","updated":"2025-07-23 10:46:20.000000000","message":"run-IBM-CI","commit_id":"044a113684fb73a0498b772586e290004ed2003d"},{"author":{"_account_id":36538,"name":"Harsh Ailani","display_name":"Harsh Ailani","email":"harsh.ailani@ibm.com","username":"harshailani"},"change_message_id":"6947eda95be1ba50798f2d0f19e8f9edd4b74caa","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"ad66d576_069926d0","updated":"2025-08-18 15:08:38.000000000","message":"LGTM","commit_id":"0ce526db5207f3af9591d81001d3fd29d12892ff"},{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"72e3a0c0998330fa038e009b48d6cbb4e18e59fc","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"9f0e8a45_8f62aa1a","updated":"2025-09-01 12:59:46.000000000","message":"My comments were already addressed. Now the IBM Storage CI and Zuul have passed.","commit_id":"0ce526db5207f3af9591d81001d3fd29d12892ff"}],"cinder/volume/drivers/ibm/storwize_svc/storwize_svc_common.py":[{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"f652b8eccf1a8e411c2877c8cf7a0914db78ead0","unresolved":true,"context_lines":[{"line_number":53,"context_line":""},{"line_number":54,"context_line":"INTERVAL_1_SEC \u003d 1"},{"line_number":55,"context_line":"DEFAULT_TIMEOUT \u003d 15"},{"line_number":56,"context_line":"CMMVC5753E \u003d \"CMMVC5753E\""},{"line_number":57,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"storwize_svc_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":1,"id":"9ee9cede_89ef20ba","line":56,"updated":"2023-04-14 06:20:59.000000000","message":"It seems, this is no longer required.","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":35910,"name":"Poojan Shah","display_name":"Poojan Shah","email":"poojan.shah@ibm.com","username":"poojan98"},"change_message_id":"28185b54db80fb4f8ce7722d2d1dcd3ffdd809b7","unresolved":false,"context_lines":[{"line_number":53,"context_line":""},{"line_number":54,"context_line":"INTERVAL_1_SEC \u003d 1"},{"line_number":55,"context_line":"DEFAULT_TIMEOUT \u003d 15"},{"line_number":56,"context_line":"CMMVC5753E \u003d \"CMMVC5753E\""},{"line_number":57,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"storwize_svc_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":1,"id":"b169b32b_1ece9c48","line":56,"in_reply_to":"9ee9cede_89ef20ba","updated":"2023-04-14 09:30:02.000000000","message":"Done","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"f652b8eccf1a8e411c2877c8cf7a0914db78ead0","unresolved":true,"context_lines":[{"line_number":553,"context_line":"        except Exception as ex:"},{"line_number":554,"context_line":"            if (hasattr(ex, \u0027msg\u0027) and"},{"line_number":555,"context_line":"                    storwize_const.ERR_OBJECT_ALREADY_EXISTS in ex.msg):"},{"line_number":556,"context_line":"                msg \u003d (_(\u0027CMMVC6372W Action failed because volume group \u0027"},{"line_number":557,"context_line":"                         \u0027with the name provided already exists.\u0027))"},{"line_number":558,"context_line":"                LOG.error(msg)"},{"line_number":559,"context_line":"                raise exception.VolumeBackendAPIException(data\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1c03f293_b7beaf9c","line":556,"range":{"start_line":556,"start_character":26,"end_line":556,"end_character":36},"updated":"2023-04-14 06:20:59.000000000","message":"query: should this be CMMVC6035E ?","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":35910,"name":"Poojan Shah","display_name":"Poojan Shah","email":"poojan.shah@ibm.com","username":"poojan98"},"change_message_id":"28185b54db80fb4f8ce7722d2d1dcd3ffdd809b7","unresolved":false,"context_lines":[{"line_number":553,"context_line":"        except Exception as ex:"},{"line_number":554,"context_line":"            if (hasattr(ex, \u0027msg\u0027) and"},{"line_number":555,"context_line":"                    storwize_const.ERR_OBJECT_ALREADY_EXISTS in ex.msg):"},{"line_number":556,"context_line":"                msg \u003d (_(\u0027CMMVC6372W Action failed because volume group \u0027"},{"line_number":557,"context_line":"                         \u0027with the name provided already exists.\u0027))"},{"line_number":558,"context_line":"                LOG.error(msg)"},{"line_number":559,"context_line":"                raise exception.VolumeBackendAPIException(data\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":1,"id":"d049b0b2_82914e66","line":556,"range":{"start_line":556,"start_character":26,"end_line":556,"end_character":36},"in_reply_to":"1c03f293_b7beaf9c","updated":"2023-04-14 09:30:02.000000000","message":"Done","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"f652b8eccf1a8e411c2877c8cf7a0914db78ead0","unresolved":true,"context_lines":[{"line_number":617,"context_line":"            attrs \u003d {key: val for key, val in zip(attributes,"},{"line_number":618,"context_line":"                                                  attribute_values)}"},{"line_number":619,"context_line":"            return attrs"},{"line_number":620,"context_line":"        # CMMVC5804E implies volumegroup-snapshot or volumegroup specified"},{"line_number":621,"context_line":"        # does not exist in the SVC storage."},{"line_number":622,"context_line":"        if storwize_const.ERR_NONEXISTENT_OBJECT_IN_COMMAND in err:"},{"line_number":623,"context_line":"            return None"}],"source_content_type":"text/x-python","patch_set":1,"id":"73c31e20_bf719d70","line":620,"range":{"start_line":620,"start_character":10,"end_line":620,"end_character":20},"updated":"2023-04-14 06:20:59.000000000","message":"can CMMVC5804E also be replaced (like in line 622) ?","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"d6196cd0cf0bd0c2e13285739d69432ecd95a2dc","unresolved":false,"context_lines":[{"line_number":617,"context_line":"            attrs \u003d {key: val for key, val in zip(attributes,"},{"line_number":618,"context_line":"                                                  attribute_values)}"},{"line_number":619,"context_line":"            return attrs"},{"line_number":620,"context_line":"        # CMMVC5804E implies volumegroup-snapshot or volumegroup specified"},{"line_number":621,"context_line":"        # does not exist in the SVC storage."},{"line_number":622,"context_line":"        if storwize_const.ERR_NONEXISTENT_OBJECT_IN_COMMAND in err:"},{"line_number":623,"context_line":"            return None"}],"source_content_type":"text/x-python","patch_set":1,"id":"149e4300_db89d9e1","line":620,"range":{"start_line":620,"start_character":10,"end_line":620,"end_character":20},"in_reply_to":"4e791967_147c9d7c","updated":"2023-04-19 02:11:03.000000000","message":"Done","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":35910,"name":"Poojan Shah","display_name":"Poojan Shah","email":"poojan.shah@ibm.com","username":"poojan98"},"change_message_id":"28185b54db80fb4f8ce7722d2d1dcd3ffdd809b7","unresolved":true,"context_lines":[{"line_number":617,"context_line":"            attrs \u003d {key: val for key, val in zip(attributes,"},{"line_number":618,"context_line":"                                                  attribute_values)}"},{"line_number":619,"context_line":"            return attrs"},{"line_number":620,"context_line":"        # CMMVC5804E implies volumegroup-snapshot or volumegroup specified"},{"line_number":621,"context_line":"        # does not exist in the SVC storage."},{"line_number":622,"context_line":"        if storwize_const.ERR_NONEXISTENT_OBJECT_IN_COMMAND in err:"},{"line_number":623,"context_line":"            return None"}],"source_content_type":"text/x-python","patch_set":1,"id":"d836ba4f_4772d66a","line":620,"range":{"start_line":620,"start_character":10,"end_line":620,"end_character":20},"in_reply_to":"73c31e20_bf719d70","updated":"2023-04-14 09:30:02.000000000","message":"We can do that, but it seems more convenient when someone copies the error code directly and searches for its description, instead of having to search for the variable mapping and then searching for it.","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"da1ac01cc33c03652838d140e73d8c7249593d36","unresolved":true,"context_lines":[{"line_number":617,"context_line":"            attrs \u003d {key: val for key, val in zip(attributes,"},{"line_number":618,"context_line":"                                                  attribute_values)}"},{"line_number":619,"context_line":"            return attrs"},{"line_number":620,"context_line":"        # CMMVC5804E implies volumegroup-snapshot or volumegroup specified"},{"line_number":621,"context_line":"        # does not exist in the SVC storage."},{"line_number":622,"context_line":"        if storwize_const.ERR_NONEXISTENT_OBJECT_IN_COMMAND in err:"},{"line_number":623,"context_line":"            return None"}],"source_content_type":"text/x-python","patch_set":1,"id":"4e791967_147c9d7c","line":620,"range":{"start_line":620,"start_character":10,"end_line":620,"end_character":20},"in_reply_to":"d836ba4f_4772d66a","updated":"2023-04-17 13:19:28.000000000","message":"I agree with Raghavendra.  The whole point of this change is to use the symbolic constants, not the error codes.\n\nI understand your concern about tracing back from the log message to the driver code when troubleshooting.  The log message will have the line number where the message was logged, though, so it should be easy to find where it was generated in the code.\n\nSomething to think about (if you don\u0027t buy my line number argument) would be change the messages from the current format of\n\n    code Message\n\nto something like\n\n    code (symbol) Message\n\nSo the message at line 555 would look like this when output:\n\n    CMMVC6035E (ERR_OBJECT_ALREADY_EXISTS) Action failed because ...\n\nThen you\u0027d have the symbolic constant in the log message and you could use it in searching the code.","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"f652b8eccf1a8e411c2877c8cf7a0914db78ead0","unresolved":true,"context_lines":[{"line_number":1595,"context_line":"                # pylint: disable\u003dE1101"},{"line_number":1596,"context_line":"                if (not multihostmap and hasattr(ex, \u0027msg\u0027) and"},{"line_number":1597,"context_line":"                        storwize_const.ERR_HOST_ALREADY_MAPPED in ex.msg):"},{"line_number":1598,"context_line":"                    LOG.warning(\u0027storwize_svc_multihostmap_enabled is set \u0027"},{"line_number":1599,"context_line":"                                \u0027to False, not allowing multi host mapping.\u0027)"},{"line_number":1600,"context_line":"                    raise exception.VolumeDriverException("},{"line_number":1601,"context_line":"                        message\u003d_(\u0027CMMVC6071E The VDisk-to-host mapping was \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"7c5eb856_8e00ad61","line":1598,"range":{"start_line":1598,"start_character":24,"end_line":1598,"end_character":31},"updated":"2023-04-14 06:20:59.000000000","message":"should this be LOG.error ?","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":35910,"name":"Poojan Shah","display_name":"Poojan Shah","email":"poojan.shah@ibm.com","username":"poojan98"},"change_message_id":"28185b54db80fb4f8ce7722d2d1dcd3ffdd809b7","unresolved":false,"context_lines":[{"line_number":1595,"context_line":"                # pylint: disable\u003dE1101"},{"line_number":1596,"context_line":"                if (not multihostmap and hasattr(ex, \u0027msg\u0027) and"},{"line_number":1597,"context_line":"                        storwize_const.ERR_HOST_ALREADY_MAPPED in ex.msg):"},{"line_number":1598,"context_line":"                    LOG.warning(\u0027storwize_svc_multihostmap_enabled is set \u0027"},{"line_number":1599,"context_line":"                                \u0027to False, not allowing multi host mapping.\u0027)"},{"line_number":1600,"context_line":"                    raise exception.VolumeDriverException("},{"line_number":1601,"context_line":"                        message\u003d_(\u0027CMMVC6071E The VDisk-to-host mapping was \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"99ed14cf_7bb3bc35","line":1598,"range":{"start_line":1598,"start_character":24,"end_line":1598,"end_character":31},"in_reply_to":"7c5eb856_8e00ad61","updated":"2023-04-14 09:30:02.000000000","message":"Done","commit_id":"ea6f96a38180049fad3422fa3ae5db0d238e5536"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"da1ac01cc33c03652838d140e73d8c7249593d36","unresolved":true,"context_lines":[{"line_number":552,"context_line":"        except Exception as ex:"},{"line_number":553,"context_line":"            if (hasattr(ex, \u0027msg\u0027) and"},{"line_number":554,"context_line":"                    storwize_const.ERR_OBJECT_ALREADY_EXISTS in ex.msg):"},{"line_number":555,"context_line":"                msg \u003d (_(\u0027CMMVC6035E Action failed because volume group \u0027"},{"line_number":556,"context_line":"                         \u0027with the name provided already exists.\u0027))"},{"line_number":557,"context_line":"                LOG.error(msg)"},{"line_number":558,"context_line":"                raise exception.VolumeBackendAPIException(data\u003dmsg)"},{"line_number":559,"context_line":"            with excutils.save_and_reraise_exception():"}],"source_content_type":"text/x-python","patch_set":3,"id":"03ed1278_8144c522","line":556,"range":{"start_line":555,"start_character":0,"end_line":556,"end_character":67},"updated":"2023-04-17 13:19:28.000000000","message":"This is still opaque.  I suggest something like this:\n\n   msg \u003d _(\u0027%(errcode)s Action failed because...\u0027,\n            {errcode: storwize_const.ERR_OBJECT_ALREADY_EXISTS})","commit_id":"7b1da266bbb9bb1295351a534edb4603b4fecd5a"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"3a7a8d0e3c59eded69aabe2972ceeb9a6b25dd1d","unresolved":false,"context_lines":[{"line_number":552,"context_line":"        except Exception as ex:"},{"line_number":553,"context_line":"            if (hasattr(ex, \u0027msg\u0027) and"},{"line_number":554,"context_line":"                    storwize_const.ERR_OBJECT_ALREADY_EXISTS in ex.msg):"},{"line_number":555,"context_line":"                msg \u003d (_(\u0027CMMVC6035E Action failed because volume group \u0027"},{"line_number":556,"context_line":"                         \u0027with the name provided already exists.\u0027))"},{"line_number":557,"context_line":"                LOG.error(msg)"},{"line_number":558,"context_line":"                raise exception.VolumeBackendAPIException(data\u003dmsg)"},{"line_number":559,"context_line":"            with excutils.save_and_reraise_exception():"}],"source_content_type":"text/x-python","patch_set":3,"id":"87110bd0_7d5308c5","line":556,"range":{"start_line":555,"start_character":0,"end_line":556,"end_character":67},"in_reply_to":"03ed1278_8144c522","updated":"2025-06-03 10:37:12.000000000","message":"Acknowledged","commit_id":"7b1da266bbb9bb1295351a534edb4603b4fecd5a"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"d6196cd0cf0bd0c2e13285739d69432ecd95a2dc","unresolved":true,"context_lines":[{"line_number":552,"context_line":"        except Exception as ex:"},{"line_number":553,"context_line":"            if (hasattr(ex, \u0027msg\u0027) and"},{"line_number":554,"context_line":"                    storwize_const.ERR_OBJECT_ALREADY_EXISTS in ex.msg):"},{"line_number":555,"context_line":"                msg \u003d (_(\u0027%(errcode)s (ERR_OBJECT_ALREADY_EXISTS) Action\u0027"},{"line_number":556,"context_line":"                         \u0027failed because volume group \u0027"},{"line_number":557,"context_line":"                         \u0027with the name provided already exists.\u0027) %"},{"line_number":558,"context_line":"                       {\u0027errcode\u0027: storwize_const.ERR_OBJECT_ALREADY_EXISTS})"}],"source_content_type":"text/x-python","patch_set":4,"id":"f1eec7fd_bbd7e68d","line":555,"range":{"start_line":555,"start_character":72,"end_line":555,"end_character":73},"updated":"2023-04-19 02:11:03.000000000","message":"I like this format better.  You need a space before the \u0027, however.","commit_id":"33633b6a138207e9f95214850e46797e179f1192"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"3a7a8d0e3c59eded69aabe2972ceeb9a6b25dd1d","unresolved":false,"context_lines":[{"line_number":552,"context_line":"        except Exception as ex:"},{"line_number":553,"context_line":"            if (hasattr(ex, \u0027msg\u0027) and"},{"line_number":554,"context_line":"                    storwize_const.ERR_OBJECT_ALREADY_EXISTS in ex.msg):"},{"line_number":555,"context_line":"                msg \u003d (_(\u0027%(errcode)s (ERR_OBJECT_ALREADY_EXISTS) Action\u0027"},{"line_number":556,"context_line":"                         \u0027failed because volume group \u0027"},{"line_number":557,"context_line":"                         \u0027with the name provided already exists.\u0027) %"},{"line_number":558,"context_line":"                       {\u0027errcode\u0027: storwize_const.ERR_OBJECT_ALREADY_EXISTS})"}],"source_content_type":"text/x-python","patch_set":4,"id":"bcdd4f0e_b53c6c9c","line":555,"range":{"start_line":555,"start_character":72,"end_line":555,"end_character":73},"in_reply_to":"f1eec7fd_bbd7e68d","updated":"2025-06-03 10:37:12.000000000","message":"Acknowledged","commit_id":"33633b6a138207e9f95214850e46797e179f1192"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"d6196cd0cf0bd0c2e13285739d69432ecd95a2dc","unresolved":true,"context_lines":[{"line_number":553,"context_line":"            if (hasattr(ex, \u0027msg\u0027) and"},{"line_number":554,"context_line":"                    storwize_const.ERR_OBJECT_ALREADY_EXISTS in ex.msg):"},{"line_number":555,"context_line":"                msg \u003d (_(\u0027%(errcode)s (ERR_OBJECT_ALREADY_EXISTS) Action\u0027"},{"line_number":556,"context_line":"                         \u0027failed because volume group \u0027"},{"line_number":557,"context_line":"                         \u0027with the name provided already exists.\u0027) %"},{"line_number":558,"context_line":"                       {\u0027errcode\u0027: storwize_const.ERR_OBJECT_ALREADY_EXISTS})"},{"line_number":559,"context_line":"                LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"ae16bba4_175b2a48","line":556,"updated":"2023-04-19 02:11:03.000000000","message":"I think this will lead to more accurate messages, and they will be searchable, too.  As a followup patch, you may want to standardize all the error messages so that they have this format.","commit_id":"33633b6a138207e9f95214850e46797e179f1192"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"3a7a8d0e3c59eded69aabe2972ceeb9a6b25dd1d","unresolved":false,"context_lines":[{"line_number":553,"context_line":"            if (hasattr(ex, \u0027msg\u0027) and"},{"line_number":554,"context_line":"                    storwize_const.ERR_OBJECT_ALREADY_EXISTS in ex.msg):"},{"line_number":555,"context_line":"                msg \u003d (_(\u0027%(errcode)s (ERR_OBJECT_ALREADY_EXISTS) Action\u0027"},{"line_number":556,"context_line":"                         \u0027failed because volume group \u0027"},{"line_number":557,"context_line":"                         \u0027with the name provided already exists.\u0027) %"},{"line_number":558,"context_line":"                       {\u0027errcode\u0027: storwize_const.ERR_OBJECT_ALREADY_EXISTS})"},{"line_number":559,"context_line":"                LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"5c27f547_28f08254","line":556,"in_reply_to":"ae16bba4_175b2a48","updated":"2025-06-03 10:37:12.000000000","message":"Acknowledged","commit_id":"33633b6a138207e9f95214850e46797e179f1192"},{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"01bc29893e0e3d14aa961d416e6d0f0cc3228599","unresolved":true,"context_lines":[{"line_number":2416,"context_line":"            msg \u003d (_(\u0027The configured flashcopy rate is %(fc_rate)s, The \u0027"},{"line_number":2417,"context_line":"                     \u0027storage code level is %(code_level)s, the flashcopy_rate\u0027"},{"line_number":2418,"context_line":"                     \u0027 range is 1-100 if the storwize code level \u0027"},{"line_number":2419,"context_line":"                     \u0027below 7.8.1.\u0027) % {\u0027fc_rate\u0027: flashcopy_rate,"},{"line_number":2420,"context_line":"                                        \u0027code_level\u0027: self.code_level})"},{"line_number":2421,"context_line":"            LOG.error(msg)"},{"line_number":2422,"context_line":"            raise exception.VolumeDriverException(message\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":6,"id":"ca5f46e0_2161940e","line":2419,"range":{"start_line":2419,"start_character":28,"end_line":2419,"end_character":34},"updated":"2025-06-23 12:13:27.000000000","message":"query: should this be 7.8.1.0 ?","commit_id":"9d63f971d878c2ca6adeee8aed073e470da3d6b3"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"9ef4e51c051a7964ca17a35e7db5edad1f07fec9","unresolved":false,"context_lines":[{"line_number":2416,"context_line":"            msg \u003d (_(\u0027The configured flashcopy rate is %(fc_rate)s, The \u0027"},{"line_number":2417,"context_line":"                     \u0027storage code level is %(code_level)s, the flashcopy_rate\u0027"},{"line_number":2418,"context_line":"                     \u0027 range is 1-100 if the storwize code level \u0027"},{"line_number":2419,"context_line":"                     \u0027below 7.8.1.\u0027) % {\u0027fc_rate\u0027: flashcopy_rate,"},{"line_number":2420,"context_line":"                                        \u0027code_level\u0027: self.code_level})"},{"line_number":2421,"context_line":"            LOG.error(msg)"},{"line_number":2422,"context_line":"            raise exception.VolumeDriverException(message\u003dmsg)"}],"source_content_type":"text/x-python","patch_set":6,"id":"ae72b875_9210f5d3","line":2419,"range":{"start_line":2419,"start_character":28,"end_line":2419,"end_character":34},"in_reply_to":"ca5f46e0_2161940e","updated":"2025-06-23 13:41:40.000000000","message":"Done","commit_id":"9d63f971d878c2ca6adeee8aed073e470da3d6b3"}],"releasenotes/notes/bug-2015722-ibm-svf_error_constants_with_significant_name-22796c2410cc1a76.yaml":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"da1ac01cc33c03652838d140e73d8c7249593d36","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    `Fix Bug #2015722 \u003chttps://bugs.launchpad.net/cinder/+bug/2015722\u003e`_: Fixed"},{"line_number":5,"context_line":"    Replace Error constants with meaningful significant names."},{"line_number":6,"context_line":"    Eg. Replace CMMVC5754E with ERR_NONEXISTENT_VOLUME"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"31c0ed79_5b3636de","line":4,"range":{"start_line":4,"start_character":9,"end_line":4,"end_character":12},"updated":"2023-04-17 13:19:28.000000000","message":"nit: I believe that according to our release note standards, this should be a lowercase \u0027b\u0027.\n\nActually, this is a driver bug, so the format should be:\n\n  Driver name: bug #1234: Fixed the foobar.\n\nhttps://docs.openstack.org/cinder/latest/contributor/releasenotes.html#drivers","commit_id":"7b1da266bbb9bb1295351a534edb4603b4fecd5a"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"3a7a8d0e3c59eded69aabe2972ceeb9a6b25dd1d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    `Fix Bug #2015722 \u003chttps://bugs.launchpad.net/cinder/+bug/2015722\u003e`_: Fixed"},{"line_number":5,"context_line":"    Replace Error constants with meaningful significant names."},{"line_number":6,"context_line":"    Eg. Replace CMMVC5754E with ERR_NONEXISTENT_VOLUME"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"8b9801a6_3f63596b","line":4,"range":{"start_line":4,"start_character":9,"end_line":4,"end_character":12},"in_reply_to":"31c0ed79_5b3636de","updated":"2025-06-03 10:37:12.000000000","message":"Done","commit_id":"7b1da266bbb9bb1295351a534edb4603b4fecd5a"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"da1ac01cc33c03652838d140e73d8c7249593d36","unresolved":true,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    `Fix Bug #2015722 \u003chttps://bugs.launchpad.net/cinder/+bug/2015722\u003e`_: Fixed"},{"line_number":5,"context_line":"    Replace Error constants with meaningful significant names."},{"line_number":6,"context_line":"    Eg. Replace CMMVC5754E with ERR_NONEXISTENT_VOLUME"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"51235730_db2d45bb","line":6,"updated":"2023-04-17 13:19:28.000000000","message":"What you want to do in the release note is to explain to an operator what impact this fix will have on them.  So maybe something like:\n\nThe internal driver use of opaque error codes resulted in some log messages that did not identify an error correctly.  The driver code now uses symbolic constants with meaningful names to correct this issue.","commit_id":"7b1da266bbb9bb1295351a534edb4603b4fecd5a"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"3a7a8d0e3c59eded69aabe2972ceeb9a6b25dd1d","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    `Fix Bug #2015722 \u003chttps://bugs.launchpad.net/cinder/+bug/2015722\u003e`_: Fixed"},{"line_number":5,"context_line":"    Replace Error constants with meaningful significant names."},{"line_number":6,"context_line":"    Eg. Replace CMMVC5754E with ERR_NONEXISTENT_VOLUME"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"9a79514a_112cb3fb","line":6,"in_reply_to":"51235730_db2d45bb","updated":"2025-06-03 10:37:12.000000000","message":"Done","commit_id":"7b1da266bbb9bb1295351a534edb4603b4fecd5a"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"d6196cd0cf0bd0c2e13285739d69432ecd95a2dc","unresolved":true,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    `IBM: Fix bug #2015722 \u003chttps://bugs.launchpad.net/cinder/+bug/2015722\u003e`_: Fixed"},{"line_number":5,"context_line":"    certain opaque error codes in the internal driver code which did not"},{"line_number":6,"context_line":"    correctly identify the root cause of errors. To address this issue,"},{"line_number":7,"context_line":"    we have now implemented the use of symbolic constants with"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"68bb99cd_25601d94","line":4,"updated":"2023-04-19 02:11:03.000000000","message":"Three things:\n\n1. Since there are multiple IBM drivers, it would be good to say \"IBM StorWize\" (or whatever the official name of your driver is).\n\n2. You want the backtick (`) to be before the \u0027b\u0027 in \u0027bug\u0027 (that way the text \"bug #1234\" will be the hyperlinked text.\n\n3. Don\u0027t put \"Fix\" at the beginning, because you (correctly) have \"Fixed\" after the hyperlink.","commit_id":"33633b6a138207e9f95214850e46797e179f1192"},{"author":{"_account_id":37328,"name":"Nimesh Desai","display_name":"Nimesh Desai","email":"nimesh.desai@ibm.com","username":"nimeshdesai"},"change_message_id":"3a7a8d0e3c59eded69aabe2972ceeb9a6b25dd1d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"---"},{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    `IBM: Fix bug #2015722 \u003chttps://bugs.launchpad.net/cinder/+bug/2015722\u003e`_: Fixed"},{"line_number":5,"context_line":"    certain opaque error codes in the internal driver code which did not"},{"line_number":6,"context_line":"    correctly identify the root cause of errors. To address this issue,"},{"line_number":7,"context_line":"    we have now implemented the use of symbolic constants with"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"3b2f8ded_8c5c0b18","line":4,"in_reply_to":"68bb99cd_25601d94","updated":"2025-06-03 10:37:12.000000000","message":"Done","commit_id":"33633b6a138207e9f95214850e46797e179f1192"}]}
