apache / apache/cloudstack

Cloudstack allows you to create snapshots with the same name for the same volume

Open
#13,051 1 comment 0 reactions 0 assignees View on GitHub
component:primary-storage type:bug
Dominant language
Java
Stars
3.1k
Forks
1.4k
Avg merge
6d 19h
Merged PRs (30d)
32

Description

### problem

Bug report:
CloudStack allows creating multiple snapshots of the same volume with identical names.

Image
These snapshots are treated as separate entities in CloudStack, but they reference the same snapshot file on secondary storage.

Image

The snapshot file on secondary storage is overwritten when a snapshot with the same name is created
Image

When one of these snapshots is deleted via CloudStack. The snapshot file is removed from secondary storage. Other snapshot entries remain in CloudStack but no longer have a corresponding file.

Deleted a snapshot in Cloudstack
Image
The first snapshot was deleted from CloudStack. During the deletion process, CloudStack also removed the snapshot file from secondary storage.

Image

However, a second snapshot entry still remains in the database and references a file on secondary storage that no longer exists.

Image

### versions

ACS: 4.20.2.0
Hypervisor: KVM
Primary Storage: Linstor
Secondary Storage: NFS

### The steps to reproduce the bug

1. Create a volume
2. Create snapshot with name for example "test-snapshot"
3. Create another snapshot with the same name "test-snapshot"
4. Verify that both snapshots exist in CloudStack and only one exists on the secondary storage
5. Delete ONE of the snapshots via CloudStack
6. Check secondary storage — snapshot file is removed
7. Check remaining snapshot in CloudStack

### What to do about it?

Prevent creating snapshots with the same name for the same volume. Deleting one breaks the other.

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the listed steps for two snapshots with the same name on one volume, then trace the snapshot creation and deletion paths involved. Done means CloudStack rejects the duplicate, or otherwise keeps snapshot entries and secondary-storage files consistent when one snapshot is deleted.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
cloud, infrastructure
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 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.