)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"1d8c762ca6414590f4c05fdd92fa099c83238013","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Handle missing volumes during cleanup of incomplete backups"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"If the volume for a backup was deleted / is not found, the cleanup routine in"},{"line_number":10,"context_line":"_cleanup_one_backup fails on updating the volume status."},{"line_number":11,"context_line":"This add some exception handling to these attempts."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"3fc6337e_0f748826","line":9,"updated":"2024-01-10 10:36:32.000000000","message":"nit: line is too long, should not exceed 72 characters as per https://wiki.openstack.org/wiki/GitCommitMessages#Summary_of_Git_commit_message_structure","commit_id":"3cbbffdb8fee8e1ac1501b2f8ac9aa72601358a5"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"a55f1a78fdda6acaca88d9cbc0683876319a7aed","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Handle missing volumes during cleanup of incomplete backups"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"If the volume for a backup was deleted / is not found, the cleanup routine in"},{"line_number":10,"context_line":"_cleanup_one_backup fails on updating the volume status."},{"line_number":11,"context_line":"This add some exception handling to these attempts."},{"line_number":12,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":7,"id":"5e01e668_b29a4b51","line":9,"in_reply_to":"3fc6337e_0f748826","updated":"2024-01-11 10:57:21.000000000","message":"Acknowledged","commit_id":"3cbbffdb8fee8e1ac1501b2f8ac9aa72601358a5"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"6638d5be3cc850c59f37b93f1ec281107044493a","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":1,"id":"e3577991_908a0537","updated":"2023-06-21 09:46:16.000000000","message":"We just ran into the referenced issue again. This led me to add some code to make the cleanup just a little more robust and tolerant. PTAL.","commit_id":"8f039a347e05822b5c6fe6aad38cb6af889cc2aa"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"26e33e897aef73a055bfc81b62a0963f6711ce81","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"48440055_d5a7955f","in_reply_to":"e3577991_908a0537","updated":"2024-01-12 08:12:53.000000000","message":"Done","commit_id":"8f039a347e05822b5c6fe6aad38cb6af889cc2aa"},{"author":{"_account_id":31779,"name":"Jean Pierre Roquesalane","display_name":"happystacker","email":"jeanpierre.roquesalane@dell.com","username":"happystacker"},"change_message_id":"242241d2cb110bb8edbeb0b6ef2fbce96a059d40","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"56a3d131_20cae7a5","updated":"2023-06-28 11:43:46.000000000","message":"Please add a release note.","commit_id":"b50acadcc02fbcd5b58ab3e744f637919c379f9c"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"29918ea044b6409f26c96296f7033ec1f4383ff5","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":2,"id":"57094211_811179a0","updated":"2023-06-26 10:53:29.000000000","message":"Sofia, is there any known issue with the tempest tests?","commit_id":"b50acadcc02fbcd5b58ab3e744f637919c379f9c"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"2370421438f1085921d3c2bc796398d537bc019b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"58af343b_aec784b1","updated":"2023-06-23 11:26:20.000000000","message":"recheck","commit_id":"b50acadcc02fbcd5b58ab3e744f637919c379f9c"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"626f933410e702b890d69cf5947422abdb8ab2ec","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"2c2abe24_71b0d536","in_reply_to":"56a3d131_20cae7a5","updated":"2023-06-28 15:28:55.000000000","message":"DONE.","commit_id":"b50acadcc02fbcd5b58ab3e744f637919c379f9c"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"26e33e897aef73a055bfc81b62a0963f6711ce81","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"77a4ebb6_1cee3bbf","in_reply_to":"57094211_811179a0","updated":"2024-01-12 08:12:53.000000000","message":"Done","commit_id":"b50acadcc02fbcd5b58ab3e744f637919c379f9c"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"eec24a073a691802919dbbc548b35c8553e94106","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"2c00c24e_58a30960","updated":"2023-07-20 19:55:34.000000000","message":"The idea seems noble, but not right in detail. Please see the comment inline.","commit_id":"dfd2a44ff04eb837cf90c0ce9a73e74f234fc591"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"067a872924726e19b8b22477a631a32335661318","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"591260de_1f491222","updated":"2023-07-11 11:19:38.000000000","message":"This change here (being about deleted volumes) seems similar to https://review.opendev.org/c/openstack/cinder/+/864100 which also aims to make cinder-backup more tolerant about deleted volumes.","commit_id":"dfd2a44ff04eb837cf90c0ce9a73e74f234fc591"},{"author":{"_account_id":29260,"name":"Jesper Schmitz Mouridsen","email":"jesper@schmitz.computer","username":"jsmdk"},"change_message_id":"1eef6cc1c5592d39d89bb6b53753036c881854be","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"4c4f517f_cdc31464","updated":"2023-06-28 19:27:40.000000000","message":"recheck","commit_id":"dfd2a44ff04eb837cf90c0ce9a73e74f234fc591"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"600329d5df918aad9183db6c880b5e5a379c6681","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"e24323d6_12f9ed97","updated":"2023-07-05 08:33:42.000000000","message":"recheck","commit_id":"dfd2a44ff04eb837cf90c0ce9a73e74f234fc591"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"ee6ddaee36853ac53ac263515ccf417b7dd13e79","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"e92917aa_53322957","updated":"2023-08-21 15:53:29.000000000","message":"Pete, could you kindly take another look and advise if this exception handling works for the case of an already deleted Volume?","commit_id":"690834fdf15d5f9380c56b187b61f2b8e9e1d387"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"efe9fff571c64c24e2aa70f8644cb822cf84678f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"73555dd7_5623a503","updated":"2023-08-23 15:51:44.000000000","message":"Please add a unit test for the new behavior. Looks good otherwise.","commit_id":"690834fdf15d5f9380c56b187b61f2b8e9e1d387"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"64428f478770ddb52fe4c5b11e02455728e238c9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"8f0a720f_80bd3ad4","updated":"2023-08-22 06:51:47.000000000","message":"Tobias this change seems very similar to https://review.opendev.org/c/openstack/cinder/+/864100 just at a different stage.\n\nMaybe you could take a peek as well?","commit_id":"690834fdf15d5f9380c56b187b61f2b8e9e1d387"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"8868c3c8fed1b56e2fe85801c1bf2f46a39424e8","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":5,"id":"9e507e0d_f1f54d0e","updated":"2023-11-27 13:53:03.000000000","message":"Could someone kindly take another peek at this one to get this reviewed and merged?","commit_id":"313a98bf2660e99f7d3f4fd53819d03147750231"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"21d029ec28a0908eb31a2971a52b49cf31baa951","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"b7452751_e69c9a88","updated":"2023-10-16 19:13:41.000000000","message":"Could you maybe take another look at this one?","commit_id":"313a98bf2660e99f7d3f4fd53819d03147750231"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"79d8ba7961f7655636d3080276ba37120e913a50","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"821e321d_591648a8","updated":"2023-10-17 05:38:40.000000000","message":"The bug description is a bit scary, with wilful deletion of volumes and restarts, but the argument checks out: we need to make sure that the service can restart, even if the admins were doing dubious things.","commit_id":"313a98bf2660e99f7d3f4fd53819d03147750231"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"fc2043fedfb872f82f7b3fbf839d943965eca093","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"14b83dfc_261f801e","updated":"2023-08-29 15:07:56.000000000","message":"recheck","commit_id":"313a98bf2660e99f7d3f4fd53819d03147750231"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"dde34c4249e5c3deccd07266d4a0b6f3e36d22e3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"78161c53_9ea35e78","updated":"2023-09-04 11:23:24.000000000","message":"recheck","commit_id":"313a98bf2660e99f7d3f4fd53819d03147750231"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"ea85634962f9d69c742f2eb5c64c248e6210ef2b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"a8c6a9de_a101d584","updated":"2023-08-31 13:27:04.000000000","message":"recheck\n\n\n(if this fails again ... I am not seeing any error that would relate to this change ...)","commit_id":"313a98bf2660e99f7d3f4fd53819d03147750231"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"f721dcac5f0cdb7ddb8daa969e43ada73224e6f6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"1455822d_32d2f3a3","updated":"2023-09-05 14:27:59.000000000","message":"recheck cinder-tempest-plugin-lvm-lio-barbican","commit_id":"313a98bf2660e99f7d3f4fd53819d03147750231"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"26e33e897aef73a055bfc81b62a0963f6711ce81","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"4760fa67_1be7e4cd","in_reply_to":"9e507e0d_f1f54d0e","updated":"2024-01-12 08:12:53.000000000","message":"Done","commit_id":"313a98bf2660e99f7d3f4fd53819d03147750231"},{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"37fa4c4190049cecd151497a47a37b735610a7c8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"2181d582_ebdcd5e4","updated":"2023-12-18 10:29:01.000000000","message":"Code and UT look good. Hopefully Zuul would pass soon.","commit_id":"0e3b1240f46536a5400a13704e0967ffcde6685f"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"ab53bc150fcecf0c3cd54a1d082fba936e49b43a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"cbe49ffd_9fb91e42","updated":"2023-12-18 09:07:11.000000000","message":"I added the missing \".\" in the release note.\n\nWould be great if you could kindly take another look if this change could be merged now.","commit_id":"0e3b1240f46536a5400a13704e0967ffcde6685f"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"a037b71476de9ad8996ef9168238b0220c506fd5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"67efbeaa_a9968a27","updated":"2024-01-02 11:41:06.000000000","message":"I think we can also handle the RESTORING state along with the CREATING state since they are both related to backup cleanup operation.","commit_id":"0e3b1240f46536a5400a13704e0967ffcde6685f"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"ff91de25bd362eb699b06518381890884dde7c73","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"24fddecd_04e75541","updated":"2024-01-05 14:58:28.000000000","message":"I made the changes you requested Rajat. PTAL.","commit_id":"3cbbffdb8fee8e1ac1501b2f8ac9aa72601358a5"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"1d8c762ca6414590f4c05fdd92fa099c83238013","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"6506c6c5_e38efe20","updated":"2024-01-10 10:36:32.000000000","message":"Thanks for working on this","commit_id":"3cbbffdb8fee8e1ac1501b2f8ac9aa72601358a5"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"cff82dfaf750e3700a6c15d921b007723b631ee4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"140034e9_dfc41f0b","updated":"2024-01-05 21:19:39.000000000","message":"The revison 7 is better than revision 4 that I reviewed previously.","commit_id":"3cbbffdb8fee8e1ac1501b2f8ac9aa72601358a5"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"5985823d5f7e9dfa0753047436f38c0dc8abe5aa","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"5de90cbd_e42d1d5e","updated":"2024-01-24 15:44:43.000000000","message":"Code \u0026 tests LGTM.  Looks like Gorka\u0027s comment has been addressed.\n(We already have more than enough +2s on this patch, but I committed to review it at today\u0027s cinder meeting, so ...)","commit_id":"7b5d3d618fc6b9d8113d4e8059349064d3e67705"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"e7cdbfcc00cff523df74a0ed61436f571ceb8b7e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"f5e3d791_973f11e6","updated":"2024-01-11 15:52:16.000000000","message":"I\u0027m okay with this. Targeted handling of exceptions has a low risk, and code-wise this looks fine (with the consolidated try-except).","commit_id":"7b5d3d618fc6b9d8113d4e8059349064d3e67705"},{"author":{"_account_id":31779,"name":"Jean Pierre Roquesalane","display_name":"happystacker","email":"jeanpierre.roquesalane@dell.com","username":"happystacker"},"change_message_id":"8100367948666d7b7da10033b4385ba71261456b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"c41035ad_1ccc10cf","updated":"2024-01-24 15:10:48.000000000","message":"Looks good. Thank you!","commit_id":"7b5d3d618fc6b9d8113d4e8059349064d3e67705"},{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"a95df83f399621cc6ba857ff441157b7bf5d5ad9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"d55cb14f_2965f44d","updated":"2024-01-24 14:41:24.000000000","message":"Looks like comments have been addressed.  Looks good to me.","commit_id":"7b5d3d618fc6b9d8113d4e8059349064d3e67705"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"196ad057df827babf8c25788e1440450448f2ca2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"286d4b36_c6d89a30","updated":"2024-01-24 14:56:51.000000000","message":"My comments are addressed, will wait for other reviewers (who reviewed in the past) to take another look, else ping me after 1-2 days and i will approve it. Thanks!","commit_id":"7b5d3d618fc6b9d8113d4e8059349064d3e67705"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"a2892417deb929f71058c16272ad677087d4d3d5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"46be232f_43fd325d","updated":"2024-01-24 16:25:35.000000000","message":"So, who\u0027s going to land it then?","commit_id":"7b5d3d618fc6b9d8113d4e8059349064d3e67705"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"a55f1a78fdda6acaca88d9cbc0683876319a7aed","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"dcbad5cd_97f8f2c2","updated":"2024-01-11 10:57:21.000000000","message":"Thanks for you review Gorka. I moved the exception handling to _cleanup_one_volume.\n\nPTAL.","commit_id":"7b5d3d618fc6b9d8113d4e8059349064d3e67705"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"daa54f926323e2249d49eb76b5897b83fe7845d2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"b6ffe466_4a5a9248","updated":"2024-01-24 19:02:15.000000000","message":"it has enough reviews, let\u0027s merge it","commit_id":"7b5d3d618fc6b9d8113d4e8059349064d3e67705"}],"cinder/backup/manager.py":[{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"eec24a073a691802919dbbc548b35c8553e94106","unresolved":true,"context_lines":[{"line_number":244,"context_line":"                LOG.exception(\"Problem cleaning up backup state for \""},{"line_number":245,"context_line":"                              \"volume %(volume)s and backup %(bkup)s.\","},{"line_number":246,"context_line":"                              {\u0027bkup\u0027: backup[\u0027id\u0027],"},{"line_number":247,"context_line":"                               \u0027volume\u0027: backup.volume_id})"},{"line_number":248,"context_line":""},{"line_number":249,"context_line":"            err \u003d \u0027incomplete backup reset on manager restart\u0027"},{"line_number":250,"context_line":"            volume_utils.update_backup_error(backup, err)"}],"source_content_type":"text/x-python","patch_set":3,"id":"d869fffd_3495323c","line":247,"updated":"2023-07-20 19:55:34.000000000","message":"This raises a few questions.\n\n1. The log message above ends with \"Ignoring\", but this one does not, although the action is the same. Do you not intend to ignore the problem here?\n\n2. The text of the exception is not logged. Good luck guessing the nature of the problem.","commit_id":"dfd2a44ff04eb837cf90c0ce9a73e74f234fc591"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"ee6ddaee36853ac53ac263515ccf417b7dd13e79","unresolved":false,"context_lines":[{"line_number":244,"context_line":"                LOG.exception(\"Problem cleaning up backup state for \""},{"line_number":245,"context_line":"                              \"volume %(volume)s and backup %(bkup)s.\","},{"line_number":246,"context_line":"                              {\u0027bkup\u0027: backup[\u0027id\u0027],"},{"line_number":247,"context_line":"                               \u0027volume\u0027: backup.volume_id})"},{"line_number":248,"context_line":""},{"line_number":249,"context_line":"            err \u003d \u0027incomplete backup reset on manager restart\u0027"},{"line_number":250,"context_line":"            volume_utils.update_backup_error(backup, err)"}],"source_content_type":"text/x-python","patch_set":3,"id":"601501a1_16f03c7e","line":247,"in_reply_to":"09cbcfa0_ef4b3009","updated":"2023-08-21 15:53:29.000000000","message":"Done","commit_id":"dfd2a44ff04eb837cf90c0ce9a73e74f234fc591"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"a87bd7bace3c9c6a208bb4fc33832e61a8c58183","unresolved":true,"context_lines":[{"line_number":244,"context_line":"                LOG.exception(\"Problem cleaning up backup state for \""},{"line_number":245,"context_line":"                              \"volume %(volume)s and backup %(bkup)s.\","},{"line_number":246,"context_line":"                              {\u0027bkup\u0027: backup[\u0027id\u0027],"},{"line_number":247,"context_line":"                               \u0027volume\u0027: backup.volume_id})"},{"line_number":248,"context_line":""},{"line_number":249,"context_line":"            err \u003d \u0027incomplete backup reset on manager restart\u0027"},{"line_number":250,"context_line":"            volume_utils.update_backup_error(backup, err)"}],"source_content_type":"text/x-python","patch_set":3,"id":"09cbcfa0_ef4b3009","line":247,"in_reply_to":"d869fffd_3495323c","updated":"2023-08-04 12:34:27.000000000","message":"\u003e This raises a few questions.\n\u003e \n\u003e 1. The log message above ends with \"Ignoring\", but this one does not, although the action is the same. Do you not intend to ignore the problem here?\n\nWell the log level is \"info\" as the exception is somewhat expected for some cases and therefore handled with just an informational message to the log.\n\n\u003e 2. The text of the exception is not logged. Good luck guessing the nature of the problem.\n\nI sense some (non-helpful) sarcasm here? Do you care to explain why log level \"exception\" is not logged? I simply wanted to also make all other cases but #1 (VolumeNotFound) be handled, but logged differently (as an error / problem).\n\nShould I \n\n a) drop this piece of exception handling and have things fail because of it\n b) change the log level to e.g. \"warning\" or \"error\"","commit_id":"dfd2a44ff04eb837cf90c0ce9a73e74f234fc591"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"a037b71476de9ad8996ef9168238b0220c506fd5","unresolved":true,"context_lines":[{"line_number":247,"context_line":"            LOG.info(\u0027Resetting backup %s to \u0027"},{"line_number":248,"context_line":"                     \u0027available (was restoring).\u0027,"},{"line_number":249,"context_line":"                     backup[\u0027id\u0027])"},{"line_number":250,"context_line":"            volume \u003d objects.Volume.get_by_id(ctxt, backup.restore_volume_id)"},{"line_number":251,"context_line":"            self._cleanup_one_volume(ctxt, volume)"},{"line_number":252,"context_line":""},{"line_number":253,"context_line":"            backup.status \u003d fields.BackupStatus.AVAILABLE"},{"line_number":254,"context_line":"            backup.save()"}],"source_content_type":"text/x-python","patch_set":6,"id":"8d244a91_6943f88f","line":251,"range":{"start_line":250,"start_character":12,"end_line":251,"end_character":50},"updated":"2024-01-02 11:41:06.000000000","message":"the same error (VolumeNotFound) will be faced here when we are restoring the backup to a volume (if it fails and we delete the volume in meantime). Since we are already fixing this for CREATING state, it would be good to handle it here as well for RESTORING state of backup","commit_id":"0e3b1240f46536a5400a13704e0967ffcde6685f"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"ff91de25bd362eb699b06518381890884dde7c73","unresolved":false,"context_lines":[{"line_number":247,"context_line":"            LOG.info(\u0027Resetting backup %s to \u0027"},{"line_number":248,"context_line":"                     \u0027available (was restoring).\u0027,"},{"line_number":249,"context_line":"                     backup[\u0027id\u0027])"},{"line_number":250,"context_line":"            volume \u003d objects.Volume.get_by_id(ctxt, backup.restore_volume_id)"},{"line_number":251,"context_line":"            self._cleanup_one_volume(ctxt, volume)"},{"line_number":252,"context_line":""},{"line_number":253,"context_line":"            backup.status \u003d fields.BackupStatus.AVAILABLE"},{"line_number":254,"context_line":"            backup.save()"}],"source_content_type":"text/x-python","patch_set":6,"id":"b0b488fe_2020cc3f","line":251,"range":{"start_line":250,"start_character":12,"end_line":251,"end_character":50},"in_reply_to":"8d244a91_6943f88f","updated":"2024-01-05 14:58:28.000000000","message":"Acknowledged","commit_id":"0e3b1240f46536a5400a13704e0967ffcde6685f"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"1d8c762ca6414590f4c05fdd92fa099c83238013","unresolved":true,"context_lines":[{"line_number":231,"context_line":"        if backup[\u0027status\u0027] \u003d\u003d fields.BackupStatus.CREATING:"},{"line_number":232,"context_line":"            LOG.info(\u0027Resetting backup %s to error (was creating).\u0027,"},{"line_number":233,"context_line":"                     backup[\u0027id\u0027])"},{"line_number":234,"context_line":"            try:"},{"line_number":235,"context_line":"                volume \u003d objects.Volume.get_by_id(ctxt, backup.volume_id)"},{"line_number":236,"context_line":"                self._cleanup_one_volume(ctxt, volume)"},{"line_number":237,"context_line":"            except exception.VolumeNotFound:"},{"line_number":238,"context_line":"                LOG.info(\u0027Volume %(volume)s of backup %(bkup)s does \u0027"},{"line_number":239,"context_line":"                         \u0027not exist anymore. Ignoring.\u0027,"},{"line_number":240,"context_line":"                         {\u0027bkup\u0027: backup[\u0027id\u0027],"},{"line_number":241,"context_line":"                          \u0027volume\u0027: backup.volume_id})"},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"            err \u003d \u0027incomplete backup reset on manager restart\u0027"},{"line_number":244,"context_line":"            volume_utils.update_backup_error(backup, err)"}],"source_content_type":"text/x-python","patch_set":7,"id":"ff882b08_2b7457e3","line":241,"range":{"start_line":234,"start_character":0,"end_line":241,"end_character":54},"updated":"2024-01-10 10:36:32.000000000","message":"-1: We should move the `try...except` to the `_cleanup-one_volume` method.\n\nHere we call:\n  `self._cleanup_one_volume(ctxt, backup.volume_id)`\n  \nAnd we change the `_cleanup-one_volume` method to:\n\n```\ndef _cleanup_one_volume(self, ctxt, volume_id):\n    try:\n        volume \u003d objects.Volume.get_by_id(ctxt, volume_id)\n    except exception.VolumeNotFound:\n        LOG.info(\u0027Volume %(volume)s of backup %(bkup)s does \u0027\n                 \u0027not exist anymore. Ignoring.\u0027,\n                 {\u0027bkup\u0027: backup[\u0027id\u0027],\n                  \u0027volume\u0027: backup.volume_id})\n        return\n```","commit_id":"3cbbffdb8fee8e1ac1501b2f8ac9aa72601358a5"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"a55f1a78fdda6acaca88d9cbc0683876319a7aed","unresolved":false,"context_lines":[{"line_number":231,"context_line":"        if backup[\u0027status\u0027] \u003d\u003d fields.BackupStatus.CREATING:"},{"line_number":232,"context_line":"            LOG.info(\u0027Resetting backup %s to error (was creating).\u0027,"},{"line_number":233,"context_line":"                     backup[\u0027id\u0027])"},{"line_number":234,"context_line":"            try:"},{"line_number":235,"context_line":"                volume \u003d objects.Volume.get_by_id(ctxt, backup.volume_id)"},{"line_number":236,"context_line":"                self._cleanup_one_volume(ctxt, volume)"},{"line_number":237,"context_line":"            except exception.VolumeNotFound:"},{"line_number":238,"context_line":"                LOG.info(\u0027Volume %(volume)s of backup %(bkup)s does \u0027"},{"line_number":239,"context_line":"                         \u0027not exist anymore. Ignoring.\u0027,"},{"line_number":240,"context_line":"                         {\u0027bkup\u0027: backup[\u0027id\u0027],"},{"line_number":241,"context_line":"                          \u0027volume\u0027: backup.volume_id})"},{"line_number":242,"context_line":""},{"line_number":243,"context_line":"            err \u003d \u0027incomplete backup reset on manager restart\u0027"},{"line_number":244,"context_line":"            volume_utils.update_backup_error(backup, err)"}],"source_content_type":"text/x-python","patch_set":7,"id":"77f73956_54d79c78","line":241,"range":{"start_line":234,"start_character":0,"end_line":241,"end_character":54},"in_reply_to":"ff882b08_2b7457e3","updated":"2024-01-11 10:57:21.000000000","message":"Acknowledged","commit_id":"3cbbffdb8fee8e1ac1501b2f8ac9aa72601358a5"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"1d8c762ca6414590f4c05fdd92fa099c83238013","unresolved":true,"context_lines":[{"line_number":246,"context_line":"            LOG.info(\u0027Resetting backup %s to \u0027"},{"line_number":247,"context_line":"                     \u0027available (was restoring).\u0027,"},{"line_number":248,"context_line":"                     backup[\u0027id\u0027])"},{"line_number":249,"context_line":"            try:"},{"line_number":250,"context_line":"                volume \u003d objects.Volume.get_by_id(ctxt,"},{"line_number":251,"context_line":"                                                  backup.restore_volume_id)"},{"line_number":252,"context_line":"                self._cleanup_one_volume(ctxt, volume)"},{"line_number":253,"context_line":"            except exception.VolumeNotFound:"},{"line_number":254,"context_line":"                LOG.info(\u0027Volume %(volume)s of backup %(bkup)s does \u0027"},{"line_number":255,"context_line":"                         \u0027not exist anymore. Ignoring.\u0027,"},{"line_number":256,"context_line":"                         {\u0027bkup\u0027: backup[\u0027id\u0027],"},{"line_number":257,"context_line":"                          \u0027volume\u0027: backup.volume_id})"},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"            backup.status \u003d fields.BackupStatus.AVAILABLE"},{"line_number":260,"context_line":"            backup.save()"}],"source_content_type":"text/x-python","patch_set":7,"id":"6e5ec291_f565858f","line":257,"range":{"start_line":249,"start_character":0,"end_line":257,"end_character":54},"updated":"2024-01-10 10:36:32.000000000","message":"-1: And here we do:\n`self._cleanup_one_volume(ctxt, backup.restore_volume_id)`","commit_id":"3cbbffdb8fee8e1ac1501b2f8ac9aa72601358a5"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"a55f1a78fdda6acaca88d9cbc0683876319a7aed","unresolved":false,"context_lines":[{"line_number":246,"context_line":"            LOG.info(\u0027Resetting backup %s to \u0027"},{"line_number":247,"context_line":"                     \u0027available (was restoring).\u0027,"},{"line_number":248,"context_line":"                     backup[\u0027id\u0027])"},{"line_number":249,"context_line":"            try:"},{"line_number":250,"context_line":"                volume \u003d objects.Volume.get_by_id(ctxt,"},{"line_number":251,"context_line":"                                                  backup.restore_volume_id)"},{"line_number":252,"context_line":"                self._cleanup_one_volume(ctxt, volume)"},{"line_number":253,"context_line":"            except exception.VolumeNotFound:"},{"line_number":254,"context_line":"                LOG.info(\u0027Volume %(volume)s of backup %(bkup)s does \u0027"},{"line_number":255,"context_line":"                         \u0027not exist anymore. Ignoring.\u0027,"},{"line_number":256,"context_line":"                         {\u0027bkup\u0027: backup[\u0027id\u0027],"},{"line_number":257,"context_line":"                          \u0027volume\u0027: backup.volume_id})"},{"line_number":258,"context_line":""},{"line_number":259,"context_line":"            backup.status \u003d fields.BackupStatus.AVAILABLE"},{"line_number":260,"context_line":"            backup.save()"}],"source_content_type":"text/x-python","patch_set":7,"id":"9e2491fe_89e30e15","line":257,"range":{"start_line":249,"start_character":0,"end_line":257,"end_character":54},"in_reply_to":"6e5ec291_f565858f","updated":"2024-01-11 10:57:21.000000000","message":"Acknowledged","commit_id":"3cbbffdb8fee8e1ac1501b2f8ac9aa72601358a5"}],"cinder/tests/unit/backup/test_backup.py":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"a037b71476de9ad8996ef9168238b0220c506fd5","unresolved":true,"context_lines":[{"line_number":464,"context_line":""},{"line_number":465,"context_line":"        deleted_volume_id \u003d str(uuid.uuid4())"},{"line_number":466,"context_line":"        backup \u003d self._create_backup_db_entry("},{"line_number":467,"context_line":"            status\u003dfields.BackupStatus.CREATING,"},{"line_number":468,"context_line":"            volume_id\u003ddeleted_volume_id"},{"line_number":469,"context_line":"        )"},{"line_number":470,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"28e04f40_7a930063","line":467,"range":{"start_line":467,"start_character":12,"end_line":467,"end_character":47},"updated":"2024-01-02 11:41:06.000000000","message":"we can use ddt for \u0027CREATING\u0027 and \u0027RESTORING\u0027 state and confirm the same info message is logged","commit_id":"0e3b1240f46536a5400a13704e0967ffcde6685f"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"ff91de25bd362eb699b06518381890884dde7c73","unresolved":false,"context_lines":[{"line_number":464,"context_line":""},{"line_number":465,"context_line":"        deleted_volume_id \u003d str(uuid.uuid4())"},{"line_number":466,"context_line":"        backup \u003d self._create_backup_db_entry("},{"line_number":467,"context_line":"            status\u003dfields.BackupStatus.CREATING,"},{"line_number":468,"context_line":"            volume_id\u003ddeleted_volume_id"},{"line_number":469,"context_line":"        )"},{"line_number":470,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"af8d4d96_bfdc23ee","line":467,"range":{"start_line":467,"start_character":12,"end_line":467,"end_character":47},"in_reply_to":"28e04f40_7a930063","updated":"2024-01-05 14:58:28.000000000","message":"Acknowledged","commit_id":"0e3b1240f46536a5400a13704e0967ffcde6685f"}],"releasenotes/notes/bug-2016138-56f07bc9376f55f7.yaml":[{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"efe9fff571c64c24e2aa70f8644cb822cf84678f","unresolved":true,"context_lines":[{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    `Bug #2016138 \u003chttps://bugs.launchpad.net/cinder/+bug/2016138\u003e`_:"},{"line_number":5,"context_line":"    Handle deleted volumes during cleanup of incomplete backups"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"06ca28fa_f667fd8c","line":5,"range":{"start_line":5,"start_character":11,"end_line":5,"end_character":18},"updated":"2023-08-23 15:51:44.000000000","message":"nit: Maybe say \"missing\" instead of \"deleted\"?","commit_id":"690834fdf15d5f9380c56b187b61f2b8e9e1d387"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"fc2043fedfb872f82f7b3fbf839d943965eca093","unresolved":false,"context_lines":[{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    `Bug #2016138 \u003chttps://bugs.launchpad.net/cinder/+bug/2016138\u003e`_:"},{"line_number":5,"context_line":"    Handle deleted volumes during cleanup of incomplete backups"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"2522b9f9_081af6d2","line":5,"range":{"start_line":5,"start_character":11,"end_line":5,"end_character":18},"in_reply_to":"06ca28fa_f667fd8c","updated":"2023-08-29 15:07:56.000000000","message":"Ack","commit_id":"690834fdf15d5f9380c56b187b61f2b8e9e1d387"},{"author":{"_account_id":31779,"name":"Jean Pierre Roquesalane","display_name":"happystacker","email":"jeanpierre.roquesalane@dell.com","username":"happystacker"},"change_message_id":"49db68f7a12457f4ac405c99b2b689830b736076","unresolved":true,"context_lines":[{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    `Bug #2016138 \u003chttps://bugs.launchpad.net/cinder/+bug/2016138\u003e`_:"},{"line_number":5,"context_line":"    Handle missing volumes during cleanup of incomplete backups"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"5ee3ba9d_234658c0","line":5,"updated":"2023-12-06 13:42:42.000000000","message":"Nit: Add a dot at the end of the line.","commit_id":"313a98bf2660e99f7d3f4fd53819d03147750231"},{"author":{"_account_id":32755,"name":"Christian Rohmann","email":"christian.rohmann@inovex.de","username":"frittentheke"},"change_message_id":"ab53bc150fcecf0c3cd54a1d082fba936e49b43a","unresolved":false,"context_lines":[{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    `Bug #2016138 \u003chttps://bugs.launchpad.net/cinder/+bug/2016138\u003e`_:"},{"line_number":5,"context_line":"    Handle missing volumes during cleanup of incomplete backups"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"88612e5a_0a182f1d","line":5,"in_reply_to":"5ee3ba9d_234658c0","updated":"2023-12-18 09:07:11.000000000","message":"Acknowledged","commit_id":"313a98bf2660e99f7d3f4fd53819d03147750231"}]}
