apache / apache/cloudstack

Orphaned snapshots remain after deleting volumes in CLVM_NG primary storage

Open
#14,154 1 comment 0 reactions 0 assignees View on GitHub
bug
Dominant language
Java
Stars
3.1k
Forks
1.4k
Avg merge
6d 19h
Merged PRs (30d)
32

Description

### problem

**Issue: Orphaned snapshots remain after deleting volumes in CLVM_NG primary storage**

I'm seeing an issue with CLVM_NG primary storage where snapshots persist for volumes that have already been deleted.

**Reproduction steps:**
1. Deploy a VM with a single root volume that has an associated volume snapshot.
2. Create a new volume from that snapshot.
3. Detach the root volume from the VM.
4. Attach the newly created volume to the VM.
5. Delete the original volume (the one with the associated snapshot).

**Observed behavior:**
The snapshot remains in the system, still linked to the deleted volume.

**Additional observations:**
- When deleting the volume, I can confirm that the LVM logical volumes (LVs) associated with both the root volume and its snapshot **are** deleted on the KVM hosts. So the underlying storage is cleaned up correctly.
- However, the snapshot entry is **not** removed from the database/GUI
- If I then manually delete the snapshot from the **"Volume Snapshot"** section, the operation reports success and the snapshot is no longer displayed in the GUI. This suggests the deletion works, but only when triggered explicitly against the snapshot record.

**Expected behavior:**
Deleting a volume should also remove (or orphan-clean) any snapshots associated with it, or at minimum the snapshot should no longer reference a non-existent volume.

### versions

ACS: 4.23
Primary storage: CLVM_NG
Hypervisor: Rhel9 KVM

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the listed volume and snapshot workflow on ACS 4.23 with CLVM_NG and trace the volume-deletion path through the database and GUI records. Compare it with the explicit Volume Snapshot deletion path; done means deleting the original volume no longer leaves a snapshot referencing it, while the underlying LVM cleanup remains intact.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend, cloud, databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.