)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"d2d1c7c6322afdeb2d4ca843739c8d276abbc083","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"d3da2d98_a76eb2fe","updated":"2023-12-15 15:14:46.000000000","message":"Nice work, Rajat.  A few nits noted inline, but nothing worth holding this up over.\n\nRaising the priority because it would be good to get this merged soon and backported.","commit_id":"2ddb2d04f410c8a7978a1ca8f57d8e7df231335a"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"e6a0a19f3dc0e23e18d78e37fdb2f83af88d35ba","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"b5c02baf_3e759bae","updated":"2023-12-21 17:57:36.000000000","message":"The overall approach looks good.","commit_id":"2ddb2d04f410c8a7978a1ca8f57d8e7df231335a"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"6d2e876694ec8690ff0063e5ac76767dc02db1ce","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"53275974_c26e3a21","updated":"2024-01-04 17:18:36.000000000","message":"Revisions LGTM.","commit_id":"1a8ea0eac4f449c09c4da70302be1bacc29a9b79"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"092fa9886ce1e1eaeb5fae9d8245b95cd1fde8b0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"2f5735e1_ccf512dc","updated":"2023-12-26 07:39:57.000000000","message":"Thanks Brian and Eric. restoring RP+1 set by Brian.","commit_id":"1a8ea0eac4f449c09c4da70302be1bacc29a9b79"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"08d0671a4792e3c8b086817e37e9f46333606d69","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"352b9d21_614ae249","updated":"2024-01-09 12:13:36.000000000","message":"recheck cinder-plugin-ceph-tempest failed with identity error","commit_id":"1a8ea0eac4f449c09c4da70302be1bacc29a9b79"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"b25a735d3ceaa9f99167773c2a65758b9e122ee7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"78f90e9d_0cae1356","updated":"2024-01-11 11:57:50.000000000","message":"recheck tempest-integrated-storage failed on tempest.api.compute.servers.test_server_actions.ServerActionsTestOtherA\t test\n\nssh time out","commit_id":"1a8ea0eac4f449c09c4da70302be1bacc29a9b79"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"f8ff09f78d39dcaa8f3998f41a48d8d96a3ceeaf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"aca94592_2e6258dd","updated":"2024-01-15 15:16:42.000000000","message":"recheck tempest-integrated-storage failure identity error (probably a different root cause)","commit_id":"1a8ea0eac4f449c09c4da70302be1bacc29a9b79"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"1a6821415701651ca287c71b0c48867a55b71cce","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"5fadd4ec_e6504e67","updated":"2023-12-27 12:46:07.000000000","message":"recheck unrelated failures in cinder-tempest-plugin-lvm-lio-barbican","commit_id":"1a8ea0eac4f449c09c4da70302be1bacc29a9b79"}],"cinder/tests/unit/test_image_utils.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"d2d1c7c6322afdeb2d4ca843739c8d276abbc083","unresolved":true,"context_lines":[{"line_number":330,"context_line":"        self.assertIsNone(output)"},{"line_number":331,"context_line":"        mock_exec.assert_called_once_with(\u0027qemu-img\u0027, \u0027convert\u0027,"},{"line_number":332,"context_line":"                                          \u0027-O\u0027, out_format, \u0027-S\u0027, \u00270\u0027, source,"},{"line_number":333,"context_line":"                                          dest, run_as_root\u003dTrue)"},{"line_number":334,"context_line":""},{"line_number":335,"context_line":"    @mock.patch(\u0027cinder.volume.volume_utils.check_for_odirect_support\u0027,"},{"line_number":336,"context_line":"                return_value\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":8,"id":"d4c39df8_e77ff0dd","line":333,"updated":"2023-12-15 15:14:46.000000000","message":"Just want to note that test_convert_to_vhd and test_convert_to_qcow2 are calling convert_image() without passing disable_sparse, and they show that the \"-S 0\" isn\u0027t being added to the qemu-img call in that case.","commit_id":"2ddb2d04f410c8a7978a1ca8f57d8e7df231335a"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"092fa9886ce1e1eaeb5fae9d8245b95cd1fde8b0","unresolved":false,"context_lines":[{"line_number":330,"context_line":"        self.assertIsNone(output)"},{"line_number":331,"context_line":"        mock_exec.assert_called_once_with(\u0027qemu-img\u0027, \u0027convert\u0027,"},{"line_number":332,"context_line":"                                          \u0027-O\u0027, out_format, \u0027-S\u0027, \u00270\u0027, source,"},{"line_number":333,"context_line":"                                          dest, run_as_root\u003dTrue)"},{"line_number":334,"context_line":""},{"line_number":335,"context_line":"    @mock.patch(\u0027cinder.volume.volume_utils.check_for_odirect_support\u0027,"},{"line_number":336,"context_line":"                return_value\u003dTrue)"}],"source_content_type":"text/x-python","patch_set":8,"id":"88fed0f9_fa156324","line":333,"in_reply_to":"d4c39df8_e77ff0dd","updated":"2023-12-26 07:39:57.000000000","message":"Acknowledged","commit_id":"2ddb2d04f410c8a7978a1ca8f57d8e7df231335a"}],"cinder/volume/drivers/storpool.py":[{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"e6a0a19f3dc0e23e18d78e37fdb2f83af88d35ba","unresolved":true,"context_lines":[{"line_number":421,"context_line":"        })"},{"line_number":422,"context_line":"        try:"},{"line_number":423,"context_line":"            return super(StorPoolDriver, self).copy_image_to_volume("},{"line_number":424,"context_line":"                context, volume, image_service, image_id)"},{"line_number":425,"context_line":"        finally:"},{"line_number":426,"context_line":"            self._attach.remove(req_id)"},{"line_number":427,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"24d675ec_69a929da","line":424,"updated":"2023-12-21 17:57:36.000000000","message":"I think the \"disable_sparse\" arg needs to be passed here.","commit_id":"2ddb2d04f410c8a7978a1ca8f57d8e7df231335a"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"092fa9886ce1e1eaeb5fae9d8245b95cd1fde8b0","unresolved":false,"context_lines":[{"line_number":421,"context_line":"        })"},{"line_number":422,"context_line":"        try:"},{"line_number":423,"context_line":"            return super(StorPoolDriver, self).copy_image_to_volume("},{"line_number":424,"context_line":"                context, volume, image_service, image_id)"},{"line_number":425,"context_line":"        finally:"},{"line_number":426,"context_line":"            self._attach.remove(req_id)"},{"line_number":427,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"d14eb96a_a37e231e","line":424,"in_reply_to":"24d675ec_69a929da","updated":"2023-12-26 07:39:57.000000000","message":"Done","commit_id":"2ddb2d04f410c8a7978a1ca8f57d8e7df231335a"}],"cinder/volume/drivers/vmware/fcd.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"d2d1c7c6322afdeb2d4ca843739c8d276abbc083","unresolved":true,"context_lines":[{"line_number":190,"context_line":"        :param image_service: The image service to use."},{"line_number":191,"context_line":"        :param image_id: The image identifier."},{"line_number":192,"context_line":"        :param disable_sparse: Enable or disable sparse copy. Default\u003dFalse."},{"line_number":193,"context_line":"                               This is a no-op for VMware driver."},{"line_number":194,"context_line":"        :returns: Model updates."},{"line_number":195,"context_line":"        \"\"\""},{"line_number":196,"context_line":"        metadata \u003d image_service.show(context, image_id)"}],"source_content_type":"text/x-python","patch_set":8,"id":"248fbe72_393ae400","line":193,"range":{"start_line":193,"start_character":36,"end_line":193,"end_character":50},"updated":"2023-12-15 15:14:46.000000000","message":"nit: It might be more clear if you said \"parameter is ignored by\" instead, but that\u0027s just me.  This is probably fine as-is.","commit_id":"2ddb2d04f410c8a7978a1ca8f57d8e7df231335a"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"092fa9886ce1e1eaeb5fae9d8245b95cd1fde8b0","unresolved":false,"context_lines":[{"line_number":190,"context_line":"        :param image_service: The image service to use."},{"line_number":191,"context_line":"        :param image_id: The image identifier."},{"line_number":192,"context_line":"        :param disable_sparse: Enable or disable sparse copy. Default\u003dFalse."},{"line_number":193,"context_line":"                               This is a no-op for VMware driver."},{"line_number":194,"context_line":"        :returns: Model updates."},{"line_number":195,"context_line":"        \"\"\""},{"line_number":196,"context_line":"        metadata \u003d image_service.show(context, image_id)"}],"source_content_type":"text/x-python","patch_set":8,"id":"a9caf3c0_a25b98b4","line":193,"range":{"start_line":193,"start_character":36,"end_line":193,"end_character":50},"in_reply_to":"248fbe72_393ae400","updated":"2023-12-26 07:39:57.000000000","message":"Done","commit_id":"2ddb2d04f410c8a7978a1ca8f57d8e7df231335a"}],"cinder/volume/drivers/vmware/vmdk.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"d2d1c7c6322afdeb2d4ca843739c8d276abbc083","unresolved":true,"context_lines":[{"line_number":1455,"context_line":"        :param image_service: Glance image service"},{"line_number":1456,"context_line":"        :param image_id: Glance image id"},{"line_number":1457,"context_line":"        :param disable_sparse: Enable or disable sparse copy. Default\u003dFalse."},{"line_number":1458,"context_line":"                               This is a no-op for VMDK driver."},{"line_number":1459,"context_line":"        \"\"\""},{"line_number":1460,"context_line":"        LOG.debug(\"Copy glance image: %s to create new volume.\", image_id)"},{"line_number":1461,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"c4fdf4ae_eccf1fd5","line":1458,"updated":"2023-12-15 15:14:46.000000000","message":"Same nit as for fcd.py","commit_id":"2ddb2d04f410c8a7978a1ca8f57d8e7df231335a"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"092fa9886ce1e1eaeb5fae9d8245b95cd1fde8b0","unresolved":false,"context_lines":[{"line_number":1455,"context_line":"        :param image_service: Glance image service"},{"line_number":1456,"context_line":"        :param image_id: Glance image id"},{"line_number":1457,"context_line":"        :param disable_sparse: Enable or disable sparse copy. Default\u003dFalse."},{"line_number":1458,"context_line":"                               This is a no-op for VMDK driver."},{"line_number":1459,"context_line":"        \"\"\""},{"line_number":1460,"context_line":"        LOG.debug(\"Copy glance image: %s to create new volume.\", image_id)"},{"line_number":1461,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"2da0e5a7_82b66c6a","line":1458,"in_reply_to":"c4fdf4ae_eccf1fd5","updated":"2023-12-26 07:39:57.000000000","message":"Done","commit_id":"2ddb2d04f410c8a7978a1ca8f57d8e7df231335a"}],"releasenotes/notes/fix-reimage-sparse-copy-d346e8f55afa6280.yaml":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"d2d1c7c6322afdeb2d4ca843739c8d276abbc083","unresolved":true,"context_lines":[{"line_number":4,"context_line":"    `Bug #2045431 \u003chttps://bugs.launchpad.net/cinder/+bug/2045431\u003e`_: Fixed"},{"line_number":5,"context_line":"    a data leak scenario where we preserve sparseness when reimaging the"},{"line_number":6,"context_line":"    volume."},{"line_number":7,"context_line":"    We currently do a sparse copy when writing an image on the volume. This"},{"line_number":8,"context_line":"    could be a potential data leak scenario where the zero blocks of the new"},{"line_number":9,"context_line":"    image are not written on the existing volume and the data from the old"},{"line_number":10,"context_line":"    image still exists on the volume. We fix the scenario by not doing sparse"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"5a8c8f10_bfdab000","line":7,"updated":"2023-12-15 15:14:46.000000000","message":"nit: if you want this to be a separate paragraph, you need a blank line between lines 6 \u0026 7","commit_id":"2ddb2d04f410c8a7978a1ca8f57d8e7df231335a"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"092fa9886ce1e1eaeb5fae9d8245b95cd1fde8b0","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    `Bug #2045431 \u003chttps://bugs.launchpad.net/cinder/+bug/2045431\u003e`_: Fixed"},{"line_number":5,"context_line":"    a data leak scenario where we preserve sparseness when reimaging the"},{"line_number":6,"context_line":"    volume."},{"line_number":7,"context_line":"    We currently do a sparse copy when writing an image on the volume. This"},{"line_number":8,"context_line":"    could be a potential data leak scenario where the zero blocks of the new"},{"line_number":9,"context_line":"    image are not written on the existing volume and the data from the old"},{"line_number":10,"context_line":"    image still exists on the volume. We fix the scenario by not doing sparse"}],"source_content_type":"text/x-yaml","patch_set":8,"id":"84ca6309_9e49fc4c","line":7,"in_reply_to":"5a8c8f10_bfdab000","updated":"2023-12-26 07:39:57.000000000","message":"Done","commit_id":"2ddb2d04f410c8a7978a1ca8f57d8e7df231335a"}]}
