Hi Chengen, Additionally, and back to the testing comments (sorry for the delay), your test plan looks good, thanks! I just updated step 6 to reflect it should fail (depending on scenario 1 or 2 / config option value).
Thanks! ** Description changed: [Impact] Deleting a volume will fail if it has snapshot or volume children, resulting in an ImageBusy error. [Fix] Upstream has a patch that uses RBD flatten operations to break dependencies between volumes and snapshots, reducing failures when using RBD volume clones and snapshots. commit 1a675c9aa178c6d9c6ed10fd98f086c46d350d3f Author: Eric Harney <ehar...@redhat.com> CommitDate: Fri Dec 1 10:17:05 2023 -0500 RBD: Flattening of child volumes during deletion [Test Plan] Here are the common steps for testing. 1. Prepare an OpenStack environment with cinder-ceph 2. Create a volume named "vol" openstack volume create --image jammy --size 10 vol 3. Create a snapshot of the volume "vol" openstack volume snapshot create --volume vol vol-snap 4. Create a volume named "vol-copy" from the snapshot openstack volume create --snapshot vol-snap vol-copy 5. Delete the snapshot and then delete the volume "vol" openstack volume snapshot delete vol-snap openstack volume delete vol 6. Confirm that the volume "vol" is successfully deleted + or deletion failed (depending on the two scenarios below) openstack volume list There are two test scenarios: - Enable RBD flatten operations: 1. Use `juju ssh` to log in to the cinder-volume and add "enable_flatten_children_deletion = True" in the cinder-ceph section of /etc/cinder/cinder.conf. 2. Restart the cinder-volume service using the command `systemctl restart cinder-volume`. 3. Follow the common steps, and all steps should pass. - Disable RBD flatten operations: 1. Ensure that "enable_flatten_children_deletion = True" is not present in the cinder-ceph section of /etc/cinder/cinder.conf. 2. Follow the common steps, and the process should fail at step 5 with an ImageBusy error. [Where problems could occur] The patch primarily modifies the workflow for volume deletion when using RBD as the backend and adds a retry mechanism for unprotecting snapshots during snapshot deletion. To prevent any performance regressions, we have also introduced a configuration option to enable the RBD flatten operations, which defaults to false. If the patch has any undiscovered issues, it will only affect volume deletion. Other functionalities or non-RBD backends will not be impacted. ** Changed in: cinder (Ubuntu Jammy) Status: In Progress => Incomplete -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1969643 Title: RBD: Unable to delete a volume which has snapshot/volume children To manage notifications about this bug go to: https://bugs.launchpad.net/cinder/+bug/1969643/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs