)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"0351dfd0162bf8c828d7ecc9748c508138ad839b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"1ee50e47_a9b7c723","updated":"2024-05-01 16:02:34.000000000","message":"This looks like what we want.  Suggestion inline about what exceptions are raised, otherwise I think this looks good.","commit_id":"0129c573a5cd63f19fba3c735393bdb0b852f154"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"00ea9a134e10ac559d7a180d7761659fdb53278e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"9893231e_87773490","updated":"2024-05-17 15:50:49.000000000","message":"LGTM.  Just fix the typo Raghavendra points out, and this will be ready to merge.","commit_id":"3bae37f366644ec72031227a4cf564019e192adf"},{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"f5ecd2e90a8d3f8910d8660c06ea86ce1973dcab","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"b5783509_61e1f692","updated":"2024-05-06 06:19:34.000000000","message":"Minor query inline","commit_id":"3bae37f366644ec72031227a4cf564019e192adf"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"c5c892253db73b004e1e1bcd191efc8d71202183","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"777b5a90_9219ee60","updated":"2024-05-17 16:49:49.000000000","message":"LGTM.","commit_id":"46cc51014226422b84d08f63a1d97dd13639d89b"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"96f02d037776e345b213070580bbeca8b74211ed","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"3c27a0ad_a5daf58a","updated":"2024-05-18 04:09:46.000000000","message":"recheck\n\n(BTW comment flushes my draft comments apparently)","commit_id":"46cc51014226422b84d08f63a1d97dd13639d89b"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"0daab4816a955b8eec4ca1195310c78bb99284ab","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"cb8c3668_71c7dcb9","updated":"2024-05-20 04:30:01.000000000","message":"recheck\n\n(seems random)","commit_id":"46cc51014226422b84d08f63a1d97dd13639d89b"},{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"2fe6402698b98d65aff97d7c363cb08f9cc195af","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"f7adcd97_f7f52334","updated":"2024-05-31 05:08:54.000000000","message":"recheck tempest-integrated-storage","commit_id":"46cc51014226422b84d08f63a1d97dd13639d89b"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"ae1aebc153585fd341544e7eaa43f3750ecca7d1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"473f4c91_0a30371f","updated":"2024-05-30 18:14:42.000000000","message":"recheck tempest-slow-py3 - tempest.scenario.test_network_advanced_server_ops.TestNetworkAdvancedServerMigrationWithHost.test_server_connectivity_live_migration : timed out waiting for the server to become reachable","commit_id":"46cc51014226422b84d08f63a1d97dd13639d89b"}],"cinder/interface/backup_driver.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"0351dfd0162bf8c828d7ecc9748c508138ad839b","unresolved":true,"context_lines":[{"line_number":143,"context_line":"        A dummy default is provided. This method can be omitted from driver."},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"        :returns: None"},{"line_number":146,"context_line":"        :raises Exception: in case of setup error"},{"line_number":147,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"29c515d0_89ca2883","line":146,"range":{"start_line":146,"start_character":7,"end_line":146,"end_character":49},"updated":"2024-05-01 16:02:34.000000000","message":"I think we should be more specific here.  Maybe something like:\n\n```\n:raises InvalidConfigurationValue: raise this if you do a configuration check and find a problem\n:raises BackupDriverException: raise this (or one of its more specific subclasses) if you detect some non-configuration problem during setup\n```\n\nLooking at the drivers, looks like the swift and s3 drivers will re-raise an Exception.  I wonder if we should recommend here in the docstring that if you catch an Exception in your driver, you should LOG.exception() and raise a BackupDriverException?  (The backup manager code that calls this function on drivers logs and swallows Exception.)  I don\u0027t know if there\u0027s any advantage to that, except to encourage driver developers to try to catch specific exceptions so they can provide useful log messages.","commit_id":"0129c573a5cd63f19fba3c735393bdb0b852f154"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"00ea9a134e10ac559d7a180d7761659fdb53278e","unresolved":false,"context_lines":[{"line_number":143,"context_line":"        A dummy default is provided. This method can be omitted from driver."},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"        :returns: None"},{"line_number":146,"context_line":"        :raises Exception: in case of setup error"},{"line_number":147,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"d9a480f3_fcd24c10","line":146,"range":{"start_line":146,"start_character":7,"end_line":146,"end_character":49},"in_reply_to":"29c515d0_89ca2883","updated":"2024-05-17 15:50:49.000000000","message":"Done","commit_id":"0129c573a5cd63f19fba3c735393bdb0b852f154"}],"cinder/interface/volume_driver.py":[{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"f5ecd2e90a8d3f8910d8660c06ea86ce1973dcab","unresolved":true,"context_lines":[{"line_number":35,"context_line":"        Can be used to set up clients, check licenses, set up protocol"},{"line_number":36,"context_line":"        specific helpers, etc."},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        If you choose to raise and exception here, the setup is considered"},{"line_number":39,"context_line":"        failed already and the check_for_setup_error() will not be called."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        :param context: The admin context of type context.RequestContext."}],"source_content_type":"text/x-python","patch_set":2,"id":"c4bd590e_718e26e8","line":38,"range":{"start_line":38,"start_character":31,"end_line":38,"end_character":34},"updated":"2024-05-06 06:19:34.000000000","message":"query: should this be ... raise an exception ?","commit_id":"3bae37f366644ec72031227a4cf564019e192adf"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"96f02d037776e345b213070580bbeca8b74211ed","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        Can be used to set up clients, check licenses, set up protocol"},{"line_number":36,"context_line":"        specific helpers, etc."},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        If you choose to raise and exception here, the setup is considered"},{"line_number":39,"context_line":"        failed already and the check_for_setup_error() will not be called."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        :param context: The admin context of type context.RequestContext."}],"source_content_type":"text/x-python","patch_set":2,"id":"78d5cb0c_72ab2863","line":38,"range":{"start_line":38,"start_character":31,"end_line":38,"end_character":34},"in_reply_to":"c4bd590e_718e26e8","updated":"2024-05-18 04:09:46.000000000","message":"Done","commit_id":"3bae37f366644ec72031227a4cf564019e192adf"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"00ea9a134e10ac559d7a180d7761659fdb53278e","unresolved":true,"context_lines":[{"line_number":36,"context_line":"        specific helpers, etc."},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        If you choose to raise and exception here, the setup is considered"},{"line_number":39,"context_line":"        failed already and the check_for_setup_error() will not be called."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        :param context: The admin context of type context.RequestContext."},{"line_number":42,"context_line":"        :raises InvalidConfigurationValue: raise this if you detect a problem"}],"source_content_type":"text/x-python","patch_set":2,"id":"d35c53ab_635f7d83","line":39,"updated":"2024-05-17 15:50:49.000000000","message":"This is good to point out.","commit_id":"3bae37f366644ec72031227a4cf564019e192adf"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"96f02d037776e345b213070580bbeca8b74211ed","unresolved":false,"context_lines":[{"line_number":36,"context_line":"        specific helpers, etc."},{"line_number":37,"context_line":""},{"line_number":38,"context_line":"        If you choose to raise and exception here, the setup is considered"},{"line_number":39,"context_line":"        failed already and the check_for_setup_error() will not be called."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        :param context: The admin context of type context.RequestContext."},{"line_number":42,"context_line":"        :raises InvalidConfigurationValue: raise this if you detect a problem"}],"source_content_type":"text/x-python","patch_set":2,"id":"16610418_60f42f7a","line":39,"in_reply_to":"d35c53ab_635f7d83","updated":"2024-05-18 04:09:46.000000000","message":"Acknowledged","commit_id":"3bae37f366644ec72031227a4cf564019e192adf"}]}
