)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"a520cfd3731d329007eef6627190618e68bbe269","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Sofia Enriquez \u003clsofia.enriquez@gmail.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2020-10-05 21:51:27 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add option for no rbd volumes in the ceph backup driver"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Change-Id: I06398428f82b3617a0e8b04d86cd6a839b143263"},{"line_number":10,"context_line":"Closes-Bug: #1895035"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"3f65232a_cdee7c87","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":55},"updated":"2020-10-22 11:25:15.000000000","message":"Please add more information to the commit message, I had to go into the LP bug to see what this was about.\n\nCommit messages should be sufficient to understand the issue, the cause, the solution, and if there are other alternatives why the were not used.","commit_id":"b58e0a16a51cbbf925bdc7162f7ec659e6e4f563"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"ff9f26d632a1ac1968ef7d05621806ab16513a9e","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix restore Ceph backups to no-RBD volumes"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Currently the Ceph backend fails when restoring no-ceph volumes."},{"line_number":10,"context_line":"This happens because the current code is generating the wrong base"},{"line_number":11,"context_line":"image when performing a full restore."},{"line_number":12,"context_line":"If we are not using a RBD destination volume we need to specify the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"35e24a0d_de3e6b9e","line":9,"range":{"start_line":9,"start_character":48,"end_line":9,"end_character":55},"updated":"2021-08-30 18:56:32.000000000","message":"nit: to non-RBD","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Fix restore Ceph backups to no-RBD volumes"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Currently the Ceph backend fails when restoring no-ceph volumes."},{"line_number":10,"context_line":"This happens because the current code is generating the wrong base"},{"line_number":11,"context_line":"image when performing a full restore."},{"line_number":12,"context_line":"If we are not using a RBD destination volume we need to specify the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"e2f6226b_2e504cb6","line":9,"range":{"start_line":9,"start_character":48,"end_line":9,"end_character":55},"in_reply_to":"35e24a0d_de3e6b9e","updated":"2022-03-10 22:29:47.000000000","message":"Done","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"ff9f26d632a1ac1968ef7d05621806ab16513a9e","unresolved":true,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Currently the Ceph backend fails when restoring no-ceph volumes."},{"line_number":10,"context_line":"This happens because the current code is generating the wrong base"},{"line_number":11,"context_line":"image when performing a full restore."},{"line_number":12,"context_line":"If we are not using a RBD destination volume we need to specify the"},{"line_number":13,"context_line":"backup in the same way than if a source snapshot is provided."},{"line_number":14,"context_line":"In this way _get_backup_base_name returns backup.service_metadata."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"eeec538c_701ff5e1","line":11,"range":{"start_line":11,"start_character":0,"end_line":11,"end_character":5},"updated":"2021-08-30 18:56:32.000000000","message":"nit: image name","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"fe184f1e08ec731368df537a03a703dc977eff87","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Currently the Ceph backend fails when restoring no-ceph volumes."},{"line_number":10,"context_line":"This happens because the current code is generating the wrong base"},{"line_number":11,"context_line":"image when performing a full restore."},{"line_number":12,"context_line":"If we are not using a RBD destination volume we need to specify the"},{"line_number":13,"context_line":"backup in the same way than if a source snapshot is provided."},{"line_number":14,"context_line":"In this way _get_backup_base_name returns backup.service_metadata."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"c72566f4_3ef42c40","line":11,"range":{"start_line":11,"start_character":0,"end_line":11,"end_character":5},"in_reply_to":"eeec538c_701ff5e1","updated":"2022-03-11 15:23:18.000000000","message":"Done","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"ff9f26d632a1ac1968ef7d05621806ab16513a9e","unresolved":true,"context_lines":[{"line_number":9,"context_line":"Currently the Ceph backend fails when restoring no-ceph volumes."},{"line_number":10,"context_line":"This happens because the current code is generating the wrong base"},{"line_number":11,"context_line":"image when performing a full restore."},{"line_number":12,"context_line":"If we are not using a RBD destination volume we need to specify the"},{"line_number":13,"context_line":"backup in the same way than if a source snapshot is provided."},{"line_number":14,"context_line":"In this way _get_backup_base_name returns backup.service_metadata."},{"line_number":15,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"0a841559_6a73f802","line":12,"range":{"start_line":12,"start_character":20,"end_line":12,"end_character":21},"updated":"2021-08-30 18:56:32.000000000","message":"nit: an","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"fe184f1e08ec731368df537a03a703dc977eff87","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Currently the Ceph backend fails when restoring no-ceph volumes."},{"line_number":10,"context_line":"This happens because the current code is generating the wrong base"},{"line_number":11,"context_line":"image when performing a full restore."},{"line_number":12,"context_line":"If we are not using a RBD destination volume we need to specify the"},{"line_number":13,"context_line":"backup in the same way than if a source snapshot is provided."},{"line_number":14,"context_line":"In this way _get_backup_base_name returns backup.service_metadata."},{"line_number":15,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"f5bc1f32_36352dc5","line":12,"range":{"start_line":12,"start_character":20,"end_line":12,"end_character":21},"in_reply_to":"0a841559_6a73f802","updated":"2022-03-11 15:23:18.000000000","message":"Done","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"ff9f26d632a1ac1968ef7d05621806ab16513a9e","unresolved":true,"context_lines":[{"line_number":10,"context_line":"This happens because the current code is generating the wrong base"},{"line_number":11,"context_line":"image when performing a full restore."},{"line_number":12,"context_line":"If we are not using a RBD destination volume we need to specify the"},{"line_number":13,"context_line":"backup in the same way than if a source snapshot is provided."},{"line_number":14,"context_line":"In this way _get_backup_base_name returns backup.service_metadata."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Closes-Bug: #1895035"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"01c9895f_ebc06ff5","line":13,"range":{"start_line":13,"start_character":23,"end_line":13,"end_character":27},"updated":"2021-08-30 18:56:32.000000000","message":"nit: as","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","unresolved":false,"context_lines":[{"line_number":10,"context_line":"This happens because the current code is generating the wrong base"},{"line_number":11,"context_line":"image when performing a full restore."},{"line_number":12,"context_line":"If we are not using a RBD destination volume we need to specify the"},{"line_number":13,"context_line":"backup in the same way than if a source snapshot is provided."},{"line_number":14,"context_line":"In this way _get_backup_base_name returns backup.service_metadata."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Closes-Bug: #1895035"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"715b21ad_dcb8f9fd","line":13,"range":{"start_line":13,"start_character":23,"end_line":13,"end_character":27},"in_reply_to":"01c9895f_ebc06ff5","updated":"2022-03-10 22:29:47.000000000","message":"Done","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":11,"id":"e9c31336_cf061197","updated":"2022-03-10 22:29:47.000000000","message":"Code and tests look good, and you\u0027ve addressed most of Gorka\u0027s comments.","commit_id":"db542ce11ffcd86f6928cdca1d19259639f6aba3"},{"author":{"_account_id":30615,"name":"Tushar Trambak Gite","email":"tushargite96@gmail.com","username":"tushargite96"},"change_message_id":"639cf2931b4d013ad40caffb03dda3554811ba75","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"22f76750_7ad95f81","updated":"2022-03-22 10:39:52.000000000","message":"LGTM","commit_id":"0188c9be561b29bdc4ea25b9da7041e8ce208de6"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"f56b74b9030ea34897a0637d8181349025a58a0d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":14,"id":"be31cdd8_790f0c10","updated":"2022-03-30 00:40:41.000000000","message":"recheck","commit_id":"fb43b548ca94637eb82ab4e50ca69eb233ce136e"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"816ad87c8ba12ee5175f0a3c4a3c59cc993b17a8","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"2bcbc7d2_9872df94","updated":"2022-04-04 17:20:52.000000000","message":"Even if cinder-tempest-ceph-multibackend-cbak looks like it passed, it shows Failed: 30 failed test including cinder_tempest_plugin.scenario.test_volume_backup_restore.TestVolumeBackupRestore.test_volume_backup_restore_multibackend [304.224690s] ... FAILED\n\nSince the ","commit_id":"855053b13530068fa50c3aae847ab5524a65d243"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"7f006c3fce0d65d22dd82a32284019cb908f2008","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":15,"id":"0bb0a7f4_a2e1cec6","updated":"2022-03-31 13:09:37.000000000","message":"recheck","commit_id":"855053b13530068fa50c3aae847ab5524a65d243"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"d35a4600c4fd9a7930e4b78d39a68a20eaa1679c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":21,"id":"252f334c_0dc0dbe5","updated":"2022-05-02 13:48:53.000000000","message":"recheck","commit_id":"eb68c0fb7abe6e9c4ba63dbe98fa04e0890cc4e4"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"d545382c0728da9eb89f574d9a52fd2383422e5e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":21,"id":"220b30c9_33f08a1e","updated":"2022-04-29 18:48:50.000000000","message":"recheck cinder-plugin-ceph-tempest","commit_id":"eb68c0fb7abe6e9c4ba63dbe98fa04e0890cc4e4"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"af11fab34e206e48b2cabd5855e0b80185fa4f13","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":23,"id":"8d439690_6af3e1b9","updated":"2022-10-27 18:44:30.000000000","message":"CI is failling https://review.opendev.org/c/openstack/cinder/+/784815/15","commit_id":"57e814ac20f58007ce9e6e70f1e4988f8bd71e3e"},{"author":{"_account_id":30615,"name":"Tushar Trambak Gite","email":"tushargite96@gmail.com","username":"tushargite96"},"change_message_id":"1db0e5790139f157b59707464451f7d21a575115","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":23,"id":"74dd9078_4fad5746","updated":"2022-09-29 09:30:38.000000000","message":"Looks good","commit_id":"57e814ac20f58007ce9e6e70f1e4988f8bd71e3e"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"5af9e0960d0da152011c677aa7ce447440bd3432","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":27,"id":"31ed343f_64baa20e","updated":"2022-11-25 10:05:31.000000000","message":"recheck cinder-grenade-mn-sub-volbak\n\n```\n{0} tempest.api.compute.admin.test_live_migration.LiveMigrationTest.test_live_migration_with_trunk [17.094548s] ... FAILED\nDetails: {\u0027code\u0027: 400, \u0027message\u0027: \u0027ubuntu-focal-ovh-gra1-0032232899 is not on local storage: Block migration can not be used with shared storage.\u0027}\n\n```\n\n\n```\n{0} setUpClass (tempest.api.compute.servers.test_create_server.ServersTestBootFromVolume) [0.000000s] ... FAILED\n    urllib3.exceptions.ReadTimeoutError: HTTPConnectionPool(host\u003d\u002710.210.66.209\u0027, port\u003d80): Read timed out. (read timeout\u003d60)\n    \n```","commit_id":"a2bb099cae58b6ff2760c47adc7e1b8cd8b1786b"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"94f899b535790e48ec32cbf5e1f0eecc79f7c6e7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":28,"id":"f10fbf9c_b8a17254","updated":"2022-11-28 15:08:11.000000000","message":"Please check the CI https://review.opendev.org/c/openstack/cinder/+/784815/\n \n\ncinder-plugin-ceph-tempest\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n- tempest.api.volume.admin.test_volumes_backup.VolumesBackupsAdminTest.test_volume_backup_export_import [11.850354s] ... ok\n- {1} tempest.api.volume.test_volumes_snapshots.VolumesSnapshotTestJSON.test_snapshot_backup [17.064977s] ... ok\n- {2} cinder_tempest_plugin.api.volume.test_volume_backup.VolumesBackupsTest.test_volume_snapshot_backup [25.646268s] ... ok\n- {2} cinder_tempest_plugin.api.volume.test_volume_backup.VolumesBackupsTest.test_backup_create_and_restore_to_an_existing_volume [32.200588s] ... ok\n- {3} cinder_tempest_plugin.api.volume.admin.test_volume_backup.VolumesBackupsTest.test_incremental_backup_respective_parents [23.177251s] ... ok\n- {2} cinder_tempest_plugin.api.volume.test_volume_backup.VolumesBackupsTest.test_incremental_backup [25.271713s] ... ok\n- {2} cinder_tempest_plugin.api.volume.test_volume_backup.VolumesBackupsTest.test_incr_backup_create_and_restore_to_an_existing_volume [33.155894s] ... ok\n\n\n\ncinder-tempest-ceph-multibackend-cbak\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n - cinder_tempest_plugin.scenario.test_volume_backup_restore.TestVolumeBackupRestore.test_volume_backup_restore_multibackend_reverse [114.619562s] ... ok\n - {1} cinder_tempest_plugin.scenario.test_volume_backup_restore.TestVolumeBackupRestore.test_volume_backup_restore_multibackend [114.795473s] ... ok\n\n[OK] tempest.api.volume.admin.test_volumes_backup.VolumesBackupsAdminTest.test_volume_backup_export_import\n[OK] tempest.api.volume.test_volumes_snapshots.VolumesSnapshotTestJSON.test_snapshot_backup\n[OK] cinder_tempest_plugin.api.volume.test_volume_backup.VolumesBackupsTest.test_volume_snapshot_backup\n[OK] cinder_tempest_plugin.api.volume.test_volume_backup.VolumesBackupsTest.test_backup_create_and_restore_to_an_existing_volume\n\n\n# Volume file is NOT RBD: can\u0027t perform incremental backup.\n# Fails because the source volume is LVM\n[X] cinder_tempest_plugin.api.volume.admin.test_volume_backup.VolumesBackupsTest.test_incremental_backup_respective_parents\n \n# Volume file is NOT RBD: can\u0027t perform incremental backup.\n# Fails because the source volume is LVM\n[X] cinder_tempest_plugin.api.volume.test_volume_backup.VolumesBackupsTest.test_incremental_backup\n\n\n# Volume file is NOT RBD: can\u0027t perform incremental backup.\n# Fails because the source volume is LVM\n[X] cinder_tempest_plugin.api.volume.test_volume_backup.VolumesBackupsTest.test_incr_backup_create_and_restore_to_an_existing_volume\n","commit_id":"eb25e874de1cd9ead99601ea84f917c380bc9f0b"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"872abf05bbf259ebb93d4d12d9244c07be14da7e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":28,"id":"2ffd2360_50e36d0e","updated":"2022-11-29 22:58:45.000000000","message":"Sorry, I don\u0027t understand the comment in the code. The fix and the tests look okay.","commit_id":"eb25e874de1cd9ead99601ea84f917c380bc9f0b"}],"cinder/backup/drivers/ceph.py":[{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"87f8648a7dc41e3b319de681e0face05c2eb35aa","unresolved":false,"context_lines":[{"line_number":1018,"context_line":"                                                         backup\u003dbackup)"},{"line_number":1019,"context_line":"            elif not self._file_is_rbd(dest_file):"},{"line_number":1020,"context_line":"                backup_name \u003d self._get_backup_base_name(backup.volume_id,"},{"line_number":1021,"context_line":"                                                       backup)"},{"line_number":1022,"context_line":"            else:"},{"line_number":1023,"context_line":"                backup_name \u003d self._get_backup_base_name(backup.volume_id)"},{"line_number":1024,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"9f560f44_5851d961","line":1021,"updated":"2020-09-09 23:49:51.000000000","message":"pep8: E128 continuation line under-indented for visual indent","commit_id":"d90deb03022d49da0bb02bdf993a4a042a0a3155"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"a520cfd3731d329007eef6627190618e68bbe269","unresolved":false,"context_lines":[{"line_number":1013,"context_line":"                                  backup.container)) as client:"},{"line_number":1014,"context_line":"            # If a source snapshot is provided we assume the base is diff"},{"line_number":1015,"context_line":"            # format."},{"line_number":1016,"context_line":"            if src_snap:"},{"line_number":1017,"context_line":"                backup_name \u003d self._get_backup_base_name(backup.volume_id,"},{"line_number":1018,"context_line":"                                                         backup\u003dbackup)"},{"line_number":1019,"context_line":"            elif not self._file_is_rbd(dest_file):"},{"line_number":1020,"context_line":"                backup_name \u003d self._get_backup_base_name(backup.volume_id,"},{"line_number":1021,"context_line":"                                                         backup)"},{"line_number":1022,"context_line":"            else:"},{"line_number":1023,"context_line":"                backup_name \u003d self._get_backup_base_name(backup.volume_id)"},{"line_number":1024,"context_line":""},{"line_number":1025,"context_line":"            # Retrieve backup volume"},{"line_number":1026,"context_line":"            src_rbd \u003d eventlet.tpool.Proxy(self.rbd.Image(client.ioctx,"}],"source_content_type":"text/x-python","patch_set":2,"id":"3f65232a_8d500435","line":1023,"range":{"start_line":1016,"start_character":0,"end_line":1023,"end_character":74},"updated":"2020-10-22 11:25:15.000000000","message":"-1: Added call is the same as the one in L1017-L1018, so we can either add the condition to L1016 or simplify all this code into something like:\n\n            backup_arg \u003d None\n            if src_snap or not self._file_is_rbd(dest_file):\n                    backup_arg \u003d backup\n            backup_name \u003d self._get_backup_base_name(backup.volume_id, backup_arg)","commit_id":"b58e0a16a51cbbf925bdc7162f7ec659e6e4f563"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"f7a3d42447881a66ba8e6d7b24a3cc81a4bc5788","unresolved":false,"context_lines":[{"line_number":1015,"context_line":"            # format."},{"line_number":1016,"context_line":"            backup_arg \u003d None"},{"line_number":1017,"context_line":"            if src_snap or not self._file_is_rbd(dest_file):"},{"line_number":1018,"context_line":"                    backup_arg \u003d backup"},{"line_number":1019,"context_line":"            backup_name \u003d self._get_backup_base_name(backup.volume_id, backup_arg)"},{"line_number":1020,"context_line":""},{"line_number":1021,"context_line":"            # Retrieve backup volume"}],"source_content_type":"text/x-python","patch_set":3,"id":"fffc6b78_4fc277eb","line":1018,"updated":"2020-11-20 01:39:31.000000000","message":"pep8: E117 over-indented","commit_id":"ab6cd2a0a47467275eaa1eb24d7a3fe15c5c949e"},{"author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"tag":"autogenerated:zuul:check","change_message_id":"f7a3d42447881a66ba8e6d7b24a3cc81a4bc5788","unresolved":false,"context_lines":[{"line_number":1016,"context_line":"            backup_arg \u003d None"},{"line_number":1017,"context_line":"            if src_snap or not self._file_is_rbd(dest_file):"},{"line_number":1018,"context_line":"                    backup_arg \u003d backup"},{"line_number":1019,"context_line":"            backup_name \u003d self._get_backup_base_name(backup.volume_id, backup_arg)"},{"line_number":1020,"context_line":""},{"line_number":1021,"context_line":"            # Retrieve backup volume"},{"line_number":1022,"context_line":"            src_rbd \u003d eventlet.tpool.Proxy(self.rbd.Image(client.ioctx,"}],"source_content_type":"text/x-python","patch_set":3,"id":"fffc6b78_afb7a386","line":1019,"updated":"2020-11-20 01:39:31.000000000","message":"pep8: E501 line too long (82 \u003e 79 characters)","commit_id":"ab6cd2a0a47467275eaa1eb24d7a3fe15c5c949e"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"ff9f26d632a1ac1968ef7d05621806ab16513a9e","unresolved":true,"context_lines":[{"line_number":1011,"context_line":"        \"\"\""},{"line_number":1012,"context_line":"        with eventlet.tpool.Proxy(rbd_driver.RADOSClient(self,"},{"line_number":1013,"context_line":"                                  backup.container)) as client:"},{"line_number":1014,"context_line":"            # If a source snapshot is provided we assume the base is diff"},{"line_number":1015,"context_line":"            # format."},{"line_number":1016,"context_line":"            backup_arg \u003d None"},{"line_number":1017,"context_line":"            if src_snap or not self._file_is_rbd(dest_file):"},{"line_number":1018,"context_line":"                backup_arg \u003d backup"}],"source_content_type":"text/x-python","patch_set":5,"id":"473adcf1_a1eeded2","line":1015,"range":{"start_line":1014,"start_character":14,"end_line":1015,"end_character":21},"updated":"2021-08-30 18:56:32.000000000","message":"-1: Need to update the comment","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","unresolved":false,"context_lines":[{"line_number":1011,"context_line":"        \"\"\""},{"line_number":1012,"context_line":"        with eventlet.tpool.Proxy(rbd_driver.RADOSClient(self,"},{"line_number":1013,"context_line":"                                  backup.container)) as client:"},{"line_number":1014,"context_line":"            # If a source snapshot is provided we assume the base is diff"},{"line_number":1015,"context_line":"            # format."},{"line_number":1016,"context_line":"            backup_arg \u003d None"},{"line_number":1017,"context_line":"            if src_snap or not self._file_is_rbd(dest_file):"},{"line_number":1018,"context_line":"                backup_arg \u003d backup"}],"source_content_type":"text/x-python","patch_set":5,"id":"b45d3df6_c00502ee","line":1015,"range":{"start_line":1014,"start_character":14,"end_line":1015,"end_character":21},"in_reply_to":"473adcf1_a1eeded2","updated":"2022-03-10 22:29:47.000000000","message":"Done","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":597,"name":"Pete Zaitcev","email":"zaitcev@kotori.zaitcev.us","username":"zaitcev"},"change_message_id":"872abf05bbf259ebb93d4d12d9244c07be14da7e","unresolved":true,"context_lines":[{"line_number":1089,"context_line":"        This will result in all extents being copied from source to"},{"line_number":1090,"context_line":"        destination."},{"line_number":1091,"context_line":""},{"line_number":1092,"context_line":"        If a source snapshot is provided the source volume is RBD."},{"line_number":1093,"context_line":"        \"\"\""},{"line_number":1094,"context_line":"        with eventlet.tpool.Proxy(rbd_driver.RADOSClient(self,"},{"line_number":1095,"context_line":"                                  backup.container)) as client:"}],"source_content_type":"text/x-python","patch_set":28,"id":"df4998e1_7e873ac1","line":1092,"updated":"2022-11-29 22:58:45.000000000","message":"I don\u0027t think this comment matches the code anymore. No matter if src_snap is provided, the source is still an RBD volume. The restore is run by the source driver (with callouts to destination driver providing a file-like), which is Ceph in this case. So again, surely it\u0027s an RBD volume...?","commit_id":"eb25e874de1cd9ead99601ea84f917c380bc9f0b"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"e9408db48493f731d1d12b7e9f0c8d086ecde46d","unresolved":false,"context_lines":[{"line_number":1089,"context_line":"        This will result in all extents being copied from source to"},{"line_number":1090,"context_line":"        destination."},{"line_number":1091,"context_line":""},{"line_number":1092,"context_line":"        If a source snapshot is provided the source volume is RBD."},{"line_number":1093,"context_line":"        \"\"\""},{"line_number":1094,"context_line":"        with eventlet.tpool.Proxy(rbd_driver.RADOSClient(self,"},{"line_number":1095,"context_line":"                                  backup.container)) as client:"}],"source_content_type":"text/x-python","patch_set":28,"id":"020fc7bd_67dd5e06","line":1092,"in_reply_to":"df4998e1_7e873ac1","updated":"2022-12-01 13:09:32.000000000","message":"True. What I wanted to do was add a comment explaining that the source snapshot is a backend snapshot, but I think the comment is redundant and it\u0027s better to remove the line.","commit_id":"eb25e874de1cd9ead99601ea84f917c380bc9f0b"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"1f3b1b8abfd2f6ac8c1a375b8a5d4016ba5bdcc9","unresolved":true,"context_lines":[{"line_number":691,"context_line":"        if name not in rbds:"},{"line_number":692,"context_line":"            LOG.debug(\"Image \u0027%s\u0027 not found - trying diff format name\", name)"},{"line_number":693,"context_line":"            if try_diff_format:"},{"line_number":694,"context_line":"                name \u003d CephBackupDriver._get_backup_base_name(volume_id)"},{"line_number":695,"context_line":"                if name not in rbds:"},{"line_number":696,"context_line":"                    LOG.debug(\"Diff format image \u0027%s\u0027 not found\", name)"},{"line_number":697,"context_line":"                    return False, name"}],"source_content_type":"text/x-python","patch_set":31,"id":"38750906_c5b70c1e","line":694,"range":{"start_line":694,"start_character":16,"end_line":694,"end_character":72},"updated":"2023-02-20 15:04:40.000000000","message":":-1: Still working on this scenario","commit_id":"4dd3519b8160b77b10291209275caa9e102a9db4"}],"cinder/tests/unit/backup/drivers/test_backup_ceph.py":[{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"ff9f26d632a1ac1968ef7d05621806ab16513a9e","unresolved":true,"context_lines":[{"line_number":933,"context_line":"        length \u003d int(self.volume_size) * units.Gi"},{"line_number":934,"context_line":"        src_snap \u003d \u0027souce-snapshot\u0027"},{"line_number":935,"context_line":""},{"line_number":936,"context_line":"        self.service._transfer_data \u003d mock.Mock()"},{"line_number":937,"context_line":""},{"line_number":938,"context_line":"        # Incremental backup base name"},{"line_number":939,"context_line":"        # This case uses base name from the parent backup\u0027s service_metadata"}],"source_content_type":"text/x-python","patch_set":5,"id":"bb551f12_792e5e95","line":936,"range":{"start_line":936,"start_character":0,"end_line":936,"end_character":49},"updated":"2021-08-30 18:56:32.000000000","message":"nit: Manually replacing a method with a mock is not good praxis (even if here doesn\u0027t matter because it\u0027s an instance that has been created just for this test).\n\nYou can do:\n\n    self.mock_object(self.service, \u0027_transfer_data\u0027)\n\nAnd it accomplished the same thing\n\n?: Shouldn\u0027t we be checking that the method is actually called with the right parameters?","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","unresolved":false,"context_lines":[{"line_number":933,"context_line":"        length \u003d int(self.volume_size) * units.Gi"},{"line_number":934,"context_line":"        src_snap \u003d \u0027souce-snapshot\u0027"},{"line_number":935,"context_line":""},{"line_number":936,"context_line":"        self.service._transfer_data \u003d mock.Mock()"},{"line_number":937,"context_line":""},{"line_number":938,"context_line":"        # Incremental backup base name"},{"line_number":939,"context_line":"        # This case uses base name from the parent backup\u0027s service_metadata"}],"source_content_type":"text/x-python","patch_set":5,"id":"bd5ab65b_25d36f24","line":936,"range":{"start_line":936,"start_character":0,"end_line":936,"end_character":49},"in_reply_to":"bb551f12_792e5e95","updated":"2022-03-10 22:29:47.000000000","message":"Done","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"ff9f26d632a1ac1968ef7d05621806ab16513a9e","unresolved":true,"context_lines":[{"line_number":937,"context_line":""},{"line_number":938,"context_line":"        # Incremental backup base name"},{"line_number":939,"context_line":"        # This case uses base name from the parent backup\u0027s service_metadata"},{"line_number":940,"context_line":"        base_name \u003d \"volume-%s.backup.%s\" % (self.volume_id, self.backup_id)"},{"line_number":941,"context_line":""},{"line_number":942,"context_line":"        with tempfile.NamedTemporaryFile() as dest_file:"},{"line_number":943,"context_line":"            with mock.patch.object(rbd_driver, \u0027RADOSClient\u0027) as \\"}],"source_content_type":"text/x-python","patch_set":5,"id":"02616fd4_c40da7be","line":940,"range":{"start_line":940,"start_character":8,"end_line":940,"end_character":17},"updated":"2021-08-30 18:56:32.000000000","message":"nit: maybe prefix the variable name with \"expected_\" as it makes clear that this will be used for the validation of the test part.","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","unresolved":false,"context_lines":[{"line_number":937,"context_line":""},{"line_number":938,"context_line":"        # Incremental backup base name"},{"line_number":939,"context_line":"        # This case uses base name from the parent backup\u0027s service_metadata"},{"line_number":940,"context_line":"        base_name \u003d \"volume-%s.backup.%s\" % (self.volume_id, self.backup_id)"},{"line_number":941,"context_line":""},{"line_number":942,"context_line":"        with tempfile.NamedTemporaryFile() as dest_file:"},{"line_number":943,"context_line":"            with mock.patch.object(rbd_driver, \u0027RADOSClient\u0027) as \\"}],"source_content_type":"text/x-python","patch_set":5,"id":"c398a6e9_3ea40a10","line":940,"range":{"start_line":940,"start_character":8,"end_line":940,"end_character":17},"in_reply_to":"02616fd4_c40da7be","updated":"2022-03-10 22:29:47.000000000","message":"Done","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"ff9f26d632a1ac1968ef7d05621806ab16513a9e","unresolved":true,"context_lines":[{"line_number":939,"context_line":"        # This case uses base name from the parent backup\u0027s service_metadata"},{"line_number":940,"context_line":"        base_name \u003d \"volume-%s.backup.%s\" % (self.volume_id, self.backup_id)"},{"line_number":941,"context_line":""},{"line_number":942,"context_line":"        with tempfile.NamedTemporaryFile() as dest_file:"},{"line_number":943,"context_line":"            with mock.patch.object(rbd_driver, \u0027RADOSClient\u0027) as \\"},{"line_number":944,"context_line":"                    mock_client:"},{"line_number":945,"context_line":"                with mock.patch.object(self.service.rbd, \u0027Image\u0027) as src_rbd:"},{"line_number":946,"context_line":"                    client \u003d mock.Mock()"},{"line_number":947,"context_line":"                    mock_client.return_value.__enter__.return_value \u003d client"},{"line_number":948,"context_line":"                    self.service._full_restore(backup, dest_file, dest_name,"}],"source_content_type":"text/x-python","patch_set":5,"id":"38ad453b_77e217a7","line":945,"range":{"start_line":942,"start_character":0,"end_line":945,"end_character":77},"updated":"2021-08-30 18:56:32.000000000","message":"nit: Please use the non-nested form of multiple context managers.  Example:\n\n        with tempfile.NamedTemporaryFile() as dest_file,\\\n            mock.patch.object(rbd_driver, \u0027RADOSClient\u0027) as mock_client,\\\n            mock.patch.object(self.service.rbd, \u0027Image\u0027) as src_rbd:\n\n-1: I\u0027m against a unit test creating files on disk.  I know we have other tests like that, but I\u0027d rather we don\u0027t add any more.","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","unresolved":false,"context_lines":[{"line_number":939,"context_line":"        # This case uses base name from the parent backup\u0027s service_metadata"},{"line_number":940,"context_line":"        base_name \u003d \"volume-%s.backup.%s\" % (self.volume_id, self.backup_id)"},{"line_number":941,"context_line":""},{"line_number":942,"context_line":"        with tempfile.NamedTemporaryFile() as dest_file:"},{"line_number":943,"context_line":"            with mock.patch.object(rbd_driver, \u0027RADOSClient\u0027) as \\"},{"line_number":944,"context_line":"                    mock_client:"},{"line_number":945,"context_line":"                with mock.patch.object(self.service.rbd, \u0027Image\u0027) as src_rbd:"},{"line_number":946,"context_line":"                    client \u003d mock.Mock()"},{"line_number":947,"context_line":"                    mock_client.return_value.__enter__.return_value \u003d client"},{"line_number":948,"context_line":"                    self.service._full_restore(backup, dest_file, dest_name,"}],"source_content_type":"text/x-python","patch_set":5,"id":"8163a3db_1e5aeded","line":945,"range":{"start_line":942,"start_character":0,"end_line":945,"end_character":77},"in_reply_to":"38ad453b_77e217a7","updated":"2022-03-10 22:29:47.000000000","message":"Done","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"ff9f26d632a1ac1968ef7d05621806ab16513a9e","unresolved":true,"context_lines":[{"line_number":943,"context_line":"            with mock.patch.object(rbd_driver, \u0027RADOSClient\u0027) as \\"},{"line_number":944,"context_line":"                    mock_client:"},{"line_number":945,"context_line":"                with mock.patch.object(self.service.rbd, \u0027Image\u0027) as src_rbd:"},{"line_number":946,"context_line":"                    client \u003d mock.Mock()"},{"line_number":947,"context_line":"                    mock_client.return_value.__enter__.return_value \u003d client"},{"line_number":948,"context_line":"                    self.service._full_restore(backup, dest_file, dest_name,"},{"line_number":949,"context_line":"                                               length, src_snap)"},{"line_number":950,"context_line":"                    src_rbd.assert_called_once_with(client.ioctx, base_name,"}],"source_content_type":"text/x-python","patch_set":5,"id":"013c7417_80369733","line":947,"range":{"start_line":946,"start_character":0,"end_line":947,"end_character":76},"updated":"2021-08-30 18:56:32.000000000","message":"-1: this should be reversed:\n\n  client \u003d mock_client.return_value.__enter__.return_value\n\nAnd we should do it after calling the full restore, so that it\u0027s clear that it\u0027s not part of the test setup but part of the validation part of the test.","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","unresolved":false,"context_lines":[{"line_number":943,"context_line":"            with mock.patch.object(rbd_driver, \u0027RADOSClient\u0027) as \\"},{"line_number":944,"context_line":"                    mock_client:"},{"line_number":945,"context_line":"                with mock.patch.object(self.service.rbd, \u0027Image\u0027) as src_rbd:"},{"line_number":946,"context_line":"                    client \u003d mock.Mock()"},{"line_number":947,"context_line":"                    mock_client.return_value.__enter__.return_value \u003d client"},{"line_number":948,"context_line":"                    self.service._full_restore(backup, dest_file, dest_name,"},{"line_number":949,"context_line":"                                               length, src_snap)"},{"line_number":950,"context_line":"                    src_rbd.assert_called_once_with(client.ioctx, base_name,"}],"source_content_type":"text/x-python","patch_set":5,"id":"596acabb_c2e9fd44","line":947,"range":{"start_line":946,"start_character":0,"end_line":947,"end_character":76},"in_reply_to":"013c7417_80369733","updated":"2022-03-10 22:29:47.000000000","message":"Done","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"ff9f26d632a1ac1968ef7d05621806ab16513a9e","unresolved":true,"context_lines":[{"line_number":956,"context_line":"        backup \u003d self.alt_backup"},{"line_number":957,"context_line":"        dest_name \u003d self.volume.name"},{"line_number":958,"context_line":"        length \u003d int(self.volume_size) * units.Gi"},{"line_number":959,"context_line":"        src_snap \u003d None"},{"line_number":960,"context_line":"        self.service._transfer_data \u003d mock.Mock()"},{"line_number":961,"context_line":"        base_name \u003d \"volume-%s.backup.%s\" % (self.volume_id, self.backup_id)"},{"line_number":962,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"589b308b_36918475","line":959,"range":{"start_line":959,"start_character":8,"end_line":959,"end_character":23},"updated":"2021-08-30 18:56:32.000000000","message":"nit: I think it\u0027s more clear if we pass \"src_snap\u003dNone\" on L 973 instead of doing this.\n\nIf we are doing it like this we might as well merge all 3 tests into 1 and use \"ddt\" to pass the only data that changes: src_snap, base_name, and mock_file_is_rbd.","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","unresolved":false,"context_lines":[{"line_number":956,"context_line":"        backup \u003d self.alt_backup"},{"line_number":957,"context_line":"        dest_name \u003d self.volume.name"},{"line_number":958,"context_line":"        length \u003d int(self.volume_size) * units.Gi"},{"line_number":959,"context_line":"        src_snap \u003d None"},{"line_number":960,"context_line":"        self.service._transfer_data \u003d mock.Mock()"},{"line_number":961,"context_line":"        base_name \u003d \"volume-%s.backup.%s\" % (self.volume_id, self.backup_id)"},{"line_number":962,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"e95b3feb_92880f3d","line":959,"range":{"start_line":959,"start_character":8,"end_line":959,"end_character":23},"in_reply_to":"589b308b_36918475","updated":"2022-03-10 22:29:47.000000000","message":"Done","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"}],"releasenotes/notes/bug-1895035-rbd-restore-non-rbd-volumes-1c6d81389ea9d5eb.yaml":[{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"eae2c39ee1f3fc7b623c626da2be354e45a61ac5","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":"    Currently the Ceph backend  fails when restoring non-ceph volumes. This"},{"line_number":5,"context_line":"    happens because the current code is generating the wrong base image when"},{"line_number":6,"context_line":"    performing a full restore.  If we are not using a RBD destination volume"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"0a339714_55076eba","line":3,"updated":"2021-01-14 10:36:11.000000000","message":"-1: Please follow the driver fix release note pattern describe in  https://docs.openstack.org/cinder/latest/contributor/releasenotes.html","commit_id":"25ea0c72afec77a89c9149329f62d829c7f60c02"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","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":"    Currently the Ceph backend  fails when restoring non-ceph volumes. This"},{"line_number":5,"context_line":"    happens because the current code is generating the wrong base image when"},{"line_number":6,"context_line":"    performing a full restore.  If we are not using a RBD destination volume"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"26dc08aa_02eada2f","line":3,"in_reply_to":"02398b45_c6502707","updated":"2022-03-10 22:29:47.000000000","message":"Done","commit_id":"25ea0c72afec77a89c9149329f62d829c7f60c02"},{"author":{"_account_id":20813,"name":"Sofia Enriquez","email":"lsofia.enriquez@gmail.com","username":"enriquetaso"},"change_message_id":"077362ee5bbda7d50f32c8732218629a0ecc0700","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":"    Currently the Ceph backend  fails when restoring non-ceph volumes. This"},{"line_number":5,"context_line":"    happens because the current code is generating the wrong base image when"},{"line_number":6,"context_line":"    performing a full restore.  If we are not using a RBD destination volume"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"02398b45_c6502707","line":3,"in_reply_to":"0a339714_55076eba","updated":"2021-01-18 22:04:22.000000000","message":"Ack - Hi Gorka, sorry for the terrible release note and thanks for explaining all this in the last meeting.","commit_id":"25ea0c72afec77a89c9149329f62d829c7f60c02"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"eae2c39ee1f3fc7b623c626da2be354e45a61ac5","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":"    Currently the Ceph backend  fails when restoring non-ceph volumes. This"},{"line_number":5,"context_line":"    happens because the current code is generating the wrong base image when"},{"line_number":6,"context_line":"    performing a full restore.  If we are not using a RBD destination volume"},{"line_number":7,"context_line":"    we need to specify the backup in the same way than If a source snapshot"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"8e95ee2f_a6082e28","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":70},"updated":"2021-01-14 10:36:11.000000000","message":"We should just say that you have fixed the restore of Ceph backups to non RBD volumes, as this is intended for operators, not coders.","commit_id":"25ea0c72afec77a89c9149329f62d829c7f60c02"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"eae2c39ee1f3fc7b623c626da2be354e45a61ac5","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":"    Currently the Ceph backend  fails when restoring non-ceph volumes. This"},{"line_number":5,"context_line":"    happens because the current code is generating the wrong base image when"},{"line_number":6,"context_line":"    performing a full restore.  If we are not using a RBD destination volume"},{"line_number":7,"context_line":"    we need to specify the backup in the same way than If a source snapshot"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"72da3791_a750b3fa","line":4,"range":{"start_line":4,"start_character":43,"end_line":4,"end_character":52},"updated":"2021-01-14 10:36:11.000000000","message":"nit: restoring to","commit_id":"25ea0c72afec77a89c9149329f62d829c7f60c02"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","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":"    Currently the Ceph backend  fails when restoring non-ceph volumes. This"},{"line_number":5,"context_line":"    happens because the current code is generating the wrong base image when"},{"line_number":6,"context_line":"    performing a full restore.  If we are not using a RBD destination volume"},{"line_number":7,"context_line":"    we need to specify the backup in the same way than If a source snapshot"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"fede38ec_a2cecfce","line":4,"range":{"start_line":4,"start_character":43,"end_line":4,"end_character":52},"in_reply_to":"72da3791_a750b3fa","updated":"2022-03-10 22:29:47.000000000","message":"Done","commit_id":"25ea0c72afec77a89c9149329f62d829c7f60c02"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","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":"    Currently the Ceph backend  fails when restoring non-ceph volumes. This"},{"line_number":5,"context_line":"    happens because the current code is generating the wrong base image when"},{"line_number":6,"context_line":"    performing a full restore.  If we are not using a RBD destination volume"},{"line_number":7,"context_line":"    we need to specify the backup in the same way than If a source snapshot"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"989bc065_d4f1de0f","line":4,"range":{"start_line":4,"start_character":4,"end_line":4,"end_character":70},"in_reply_to":"8e95ee2f_a6082e28","updated":"2022-03-10 22:29:47.000000000","message":"Done","commit_id":"25ea0c72afec77a89c9149329f62d829c7f60c02"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"eae2c39ee1f3fc7b623c626da2be354e45a61ac5","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":"    Currently the Ceph backend  fails when restoring non-ceph volumes. This"},{"line_number":5,"context_line":"    happens because the current code is generating the wrong base image when"},{"line_number":6,"context_line":"    performing a full restore.  If we are not using a RBD destination volume"},{"line_number":7,"context_line":"    we need to specify the backup in the same way than If a source snapshot"},{"line_number":8,"context_line":"    is provided."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"26b76721_44c1f28a","line":8,"range":{"start_line":4,"start_character":72,"end_line":8,"end_character":16},"updated":"2021-01-14 10:36:11.000000000","message":"-1: This is not necessary for the release note, this can be included in the LP bug (which must be referenced in the release note) for those who want additional information.","commit_id":"25ea0c72afec77a89c9149329f62d829c7f60c02"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","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":"    Currently the Ceph backend  fails when restoring non-ceph volumes. This"},{"line_number":5,"context_line":"    happens because the current code is generating the wrong base image when"},{"line_number":6,"context_line":"    performing a full restore.  If we are not using a RBD destination volume"},{"line_number":7,"context_line":"    we need to specify the backup in the same way than If a source snapshot"},{"line_number":8,"context_line":"    is provided."}],"source_content_type":"text/x-yaml","patch_set":4,"id":"9334317b_482410cb","line":8,"range":{"start_line":4,"start_character":72,"end_line":8,"end_character":16},"in_reply_to":"26b76721_44c1f28a","updated":"2022-03-10 22:29:47.000000000","message":"Done","commit_id":"25ea0c72afec77a89c9149329f62d829c7f60c02"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"ff9f26d632a1ac1968ef7d05621806ab16513a9e","unresolved":true,"context_lines":[{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Ceph backup driver `Bug #1895035"},{"line_number":5,"context_line":"    \u003chttps://bugs.launchpad.net/cinder/+bug/1895035\u003e`_: Fix restore of Ceph"},{"line_number":6,"context_line":"    backups to non RBD volumes."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"cfe94324_97ee2b02","line":5,"range":{"start_line":5,"start_character":56,"end_line":5,"end_character":59},"updated":"2021-08-30 18:56:32.000000000","message":"nit: We are trying to use the past tense for the release notes [1], so this should be \"Fixed\".\n\n[1]: https://docs.openstack.org/cinder/latest/contributor/releasenotes.html#bugs","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"3ae82ff431fee5ac2c77ea42fcb24cf6f7b1db12","unresolved":false,"context_lines":[{"line_number":2,"context_line":"fixes:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Ceph backup driver `Bug #1895035"},{"line_number":5,"context_line":"    \u003chttps://bugs.launchpad.net/cinder/+bug/1895035\u003e`_: Fix restore of Ceph"},{"line_number":6,"context_line":"    backups to non RBD volumes."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"7eb724df_77c64aab","line":5,"range":{"start_line":5,"start_character":56,"end_line":5,"end_character":59},"in_reply_to":"cfe94324_97ee2b02","updated":"2022-03-10 22:29:47.000000000","message":"Done","commit_id":"ad04d99601fa09509b17efb779fb53216d903477"}]}
