)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"c00661c29197322f3d0205cfd779bb7828aee678","unresolved":true,"context_lines":[{"line_number":22,"context_line":"Co-authored-by: Brian Rosmaita \u003crosmaita.fossdev@gmail.com\u003e"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Change-Id: I49404e87eb0c77b4ed92918404f86c073fbfd713"},{"line_number":25,"context_line":"Closes-bug: #2074377"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"fa279a68_8f1efb3d","line":25,"range":{"start_line":25,"start_character":0,"end_line":25,"end_character":20},"updated":"2025-04-17 10:12:56.000000000","message":"nit: generally Change-Id is the last line of commit as it\u0027s automatically appended.\nWe can see similar examples in guidelines[1] as well\n\n[1] https://www.mediawiki.org/wiki/Gerrit/Commit_message_guidelines#Good_example","commit_id":"9ddd4c3c8fb8ac169643b47eee34559b1e79c71a"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"4c47c27297e5dadb6ba833965e432fe1a07ebb08","unresolved":false,"context_lines":[{"line_number":22,"context_line":"Co-authored-by: Brian Rosmaita \u003crosmaita.fossdev@gmail.com\u003e"},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Change-Id: I49404e87eb0c77b4ed92918404f86c073fbfd713"},{"line_number":25,"context_line":"Closes-bug: #2074377"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"a01aef21_9104b54c","line":25,"range":{"start_line":25,"start_character":0,"end_line":25,"end_character":20},"in_reply_to":"fa279a68_8f1efb3d","updated":"2025-04-17 12:49:10.000000000","message":"Done","commit_id":"9ddd4c3c8fb8ac169643b47eee34559b1e79c71a"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b103819ff2ceaecf599ce40853af0dfcab0aa3d8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"2f02af63_7e45fef7","updated":"2025-04-14 22:08:15.000000000","message":"I\u0027m working on revising the unit tests.  Some notes to self left inline (I\u0027ll make the changes.)","commit_id":"c9d3b2319cc66b26337b07acc7824aa5da0012e1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"6deede4c2662ddec33dfc0448bdad85c43b22b25","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"a6a3741d_90762094","updated":"2025-04-16 01:31:17.000000000","message":"recheck devstack-plugin-nfs-tempest-full - timeouts in a bunch of server tests","commit_id":"541b983355c486ad64defe03373fc26887bd0420"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"c00661c29197322f3d0205cfd779bb7828aee678","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"ae806b94_e45192e2","updated":"2025-04-17 10:12:56.000000000","message":"Code and test looks good to me, I\u0027ve verified the fix in a local NFS environment and the described scenario in LP works with the fix applied. However it is missing a releasenote so -1 for that.\n\nAn alternative thought came to my mind while reviewing is, if we had left any other place where we call the format inspector without allowing the backing files from the file system drivers. It would be good to check that otherwise we might end up with a similar bug in another operation.\nAlso an alternative solution to this would be,\n1. set default value of allow_qcow2_backing_file to True\n2. pass the allow_qcow2_backing_file\u003dFalse value wherever an image related operation calls the format inspector\n\nThis will lead to more code modifications but will ensure that we are safe with all filesystem drivers being able to call format inspector freely from indirect methods.","commit_id":"9ddd4c3c8fb8ac169643b47eee34559b1e79c71a"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"39b44cc4fb5d7ac495f6f8fdb623f3dc1c24992a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"d5387e40_104255c5","updated":"2025-04-16 23:57:53.000000000","message":"recheck tempest-integrated-storage - test_resize_volume_backed_server_confirm something bad happened to the server, console dump in the log","commit_id":"9ddd4c3c8fb8ac169643b47eee34559b1e79c71a"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"4c47c27297e5dadb6ba833965e432fe1a07ebb08","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"633876f6_40f23471","in_reply_to":"ae806b94_e45192e2","updated":"2025-04-17 12:49:10.000000000","message":"I think we\u0027ll be refactoring the image_utils during Flamingo, so we can keep this in mind as a possibility ... though I really don\u0027t like the idea of having a possibly unsafe option have a default value of True.  But like you point out, the alternative is possibly breaking some of our drivers.","commit_id":"9ddd4c3c8fb8ac169643b47eee34559b1e79c71a"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"0896eb8ea8069fb8c6e1b6790a31793bd0b102d8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"7b480bd3_0c37bae1","updated":"2025-04-17 12:33:04.000000000","message":"one nit in releasenote otherwise looks good. Thanks Brian and Fernando for fixing this!","commit_id":"9687fbac79b0af266dcefb89b8ecc5c2940f6c80"}],"cinder/image/image_utils.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b103819ff2ceaecf599ce40853af0dfcab0aa3d8","unresolved":true,"context_lines":[{"line_number":472,"context_line":"        try:"},{"line_number":473,"context_line":"            image_info \u003d qemu_img_info(source,"},{"line_number":474,"context_line":"                                       run_as_root\u003drun_as_root)"},{"line_number":475,"context_line":"        except ValueError as e:"},{"line_number":476,"context_line":"            msg \u003d (\"The image was successfully converted, but image size \""},{"line_number":477,"context_line":"                   \"is unavailable. src %(src)s, dest %(dest)s. %(error)s\")"},{"line_number":478,"context_line":"            LOG.info(msg, {\"src\": source,"}],"source_content_type":"text/x-python","patch_set":3,"id":"94876973_f8ac5cbe","line":475,"range":{"start_line":475,"start_character":8,"end_line":475,"end_character":31},"updated":"2025-04-14 22:08:15.000000000","message":"Need to rethink this ... it won\u0027t raise ValueError any more because we\u0027re not trying to retrieve the virtual_size.  And actually, it wouldn\u0027t be ValueError, it would be AttributeError.  (I\u0027ve seen this code a lot, and never noticed this before!)  And actually, this won\u0027t raise an AttributeError either, because the attribute will be defined, but it could be None.  So we need to restructure this a bit.","commit_id":"c9d3b2319cc66b26337b07acc7824aa5da0012e1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"ea5cf270e83ded760636514a63e2973c883644c1","unresolved":false,"context_lines":[{"line_number":472,"context_line":"        try:"},{"line_number":473,"context_line":"            image_info \u003d qemu_img_info(source,"},{"line_number":474,"context_line":"                                       run_as_root\u003drun_as_root)"},{"line_number":475,"context_line":"        except ValueError as e:"},{"line_number":476,"context_line":"            msg \u003d (\"The image was successfully converted, but image size \""},{"line_number":477,"context_line":"                   \"is unavailable. src %(src)s, dest %(dest)s. %(error)s\")"},{"line_number":478,"context_line":"            LOG.info(msg, {\"src\": source,"}],"source_content_type":"text/x-python","patch_set":3,"id":"59963139_94d02438","line":475,"range":{"start_line":475,"start_character":8,"end_line":475,"end_character":31},"in_reply_to":"94876973_f8ac5cbe","updated":"2025-04-15 18:55:37.000000000","message":"Acknowledged","commit_id":"c9d3b2319cc66b26337b07acc7824aa5da0012e1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b103819ff2ceaecf599ce40853af0dfcab0aa3d8","unresolved":true,"context_lines":[{"line_number":547,"context_line":"                       passphrase_file\u003dpassphrase_file,"},{"line_number":548,"context_line":"                       compress\u003dcompress,"},{"line_number":549,"context_line":"                       src_passphrase_file\u003dsrc_passphrase_file,"},{"line_number":550,"context_line":"                       disable_sparse\u003ddisable_sparse)"},{"line_number":551,"context_line":""},{"line_number":552,"context_line":""},{"line_number":553,"context_line":"def resize_image(source: str,"}],"source_content_type":"text/x-python","patch_set":3,"id":"b144d586_044b1c76","line":550,"updated":"2025-04-14 22:08:15.000000000","message":"Also need to pass \u0027src_img_info\u003ddata\u0027 here.","commit_id":"c9d3b2319cc66b26337b07acc7824aa5da0012e1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"ea5cf270e83ded760636514a63e2973c883644c1","unresolved":false,"context_lines":[{"line_number":547,"context_line":"                       passphrase_file\u003dpassphrase_file,"},{"line_number":548,"context_line":"                       compress\u003dcompress,"},{"line_number":549,"context_line":"                       src_passphrase_file\u003dsrc_passphrase_file,"},{"line_number":550,"context_line":"                       disable_sparse\u003ddisable_sparse)"},{"line_number":551,"context_line":""},{"line_number":552,"context_line":""},{"line_number":553,"context_line":"def resize_image(source: str,"}],"source_content_type":"text/x-python","patch_set":3,"id":"8edc5d96_58b2997b","line":550,"in_reply_to":"b144d586_044b1c76","updated":"2025-04-15 18:55:37.000000000","message":"Acknowledged","commit_id":"c9d3b2319cc66b26337b07acc7824aa5da0012e1"}],"releasenotes/notes/fix-nfs-vol-from-snapshot-654a07d25a33bf7d.yaml":[{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"0896eb8ea8069fb8c6e1b6790a31793bd0b102d8","unresolved":true,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    NFS driver `bug #2074377"},{"line_number":5,"context_line":"    \u003chttps://bugs.launchpad.net/cinder/+bug/2074377\u003e`_: Fixed regression"},{"line_number":6,"context_line":"    caused by change I65857288b797 (the mitigation for CVE-2024-32498)"},{"line_number":7,"context_line":"    that was preventing the creation of a new volume from the second and"},{"line_number":8,"context_line":"    subsequent snapshots of an existing volume."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"186cb96e_3a2e7ac1","line":6,"range":{"start_line":6,"start_character":14,"end_line":6,"end_character":34},"updated":"2025-04-17 12:33:04.000000000","message":"nit: not sure how useful it would be to mention the change ID for end users as the CVE number should be sufficient in providing details.","commit_id":"9687fbac79b0af266dcefb89b8ecc5c2940f6c80"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"4c47c27297e5dadb6ba833965e432fe1a07ebb08","unresolved":true,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    NFS driver `bug #2074377"},{"line_number":5,"context_line":"    \u003chttps://bugs.launchpad.net/cinder/+bug/2074377\u003e`_: Fixed regression"},{"line_number":6,"context_line":"    caused by change I65857288b797 (the mitigation for CVE-2024-32498)"},{"line_number":7,"context_line":"    that was preventing the creation of a new volume from the second and"},{"line_number":8,"context_line":"    subsequent snapshots of an existing volume."}],"source_content_type":"text/x-yaml","patch_set":7,"id":"53ab0e28_9ae22c4d","line":6,"range":{"start_line":6,"start_character":14,"end_line":6,"end_character":34},"in_reply_to":"186cb96e_3a2e7ac1","updated":"2025-04-17 12:49:10.000000000","message":"I understand your point but for \"end users\" \u003d\u003d \"operators\" it might be helpful, so I\u0027m going to leave it.  Since I\u0027m mentioning a regression, I might as well point to the patch that caused it.","commit_id":"9687fbac79b0af266dcefb89b8ecc5c2940f6c80"}]}
