Bug #36404
closed
mgr/dashboard: Can not delete RBD with snapshots
Added by Volker Theile over 5 years ago.
Updated about 3 years ago.
Description
If there are snapshot sassigned to a RBD, then it is not possible to delete them. In my opinion the deletion should be forced automatically if it is moved to trash and the trash is purged then.
Otherwise it is necessary to explicitely delete every snapshot manually before i can delete a RBD.
Files
It might be a good idea to tell the user that the RBD, which is about to be deleted still has some associated snapshots which will also be deleted if the user proceeds.
edit
Or maybe even show the snapshots in the deletion dialog, so that the user knows which and how many snapshots will be removed.
- Priority changed from Normal to High
- Tags set to low-hanging-fruit
- Priority changed from High to Normal
- Assignee deleted (
Ricardo Marques)
Traceback from the mgr.log:
2018-11-28 11:44:01.824 7f126de33700 -1 librbd::image::RemoveRequest: 0x55fc7e529340 check_image_snaps: image has snapshots - not removing
2018-11-28 11:44:01.848 7f126b62e700 -1 librbd::api::Trash: remove: error removing image 10cb672ee0af, which is pending deletion
2018-11-28 11:44:01.856 7f126b62e700 0 mgr[dashboard] Error while calling Task(ns=rbd/trash/purge, md={'pool_name': u'test'})
Traceback (most recent call last):
File "/ceph/src/pybind/mgr/dashboard/tools.py", line 530, in _run
val = self.task.fn(*self.task.fn_args, **self.task.fn_kwargs)
File "/ceph/src/pybind/mgr/dashboard/services/exception.py", line 44, in wrapper
return f(*args, **kwargs)
File "/usr/lib64/python2.7/contextlib.py", line 35, in __exit__
self.gen.throw(type, value, traceback)
File "/ceph/src/pybind/mgr/dashboard/services/exception.py", line 102, in handle_rbd_error
raise DashboardException(e, component='rbd')
DashboardException: [errno 39] error deleting image from trash
- Translation missing: en.field_tag_list set to low-hanging-fruit, usability, management
- Target version changed from v14.0.0 to v15.0.0
- Tags deleted (
low-hanging-fruit)
- Assignee set to Tiago Melo
- Blocked by Feature #43958: librbd: Add support for RBD Snapshot purge in python bindings added
- Status changed from New to In Progress
- Pull request ID set to 33067
Few questions regarding this:
- If there are protected snapshots, should we disable the deletion or unprotect it automatically and delete everything?
- If there are protected snapshots and the RBD is in the Trash how should we proceed?
Unprotect automatically and then delete?
The user no longer has access to the snapshot list and can't unprotect them.
- Should it be allowed to move an RBD to trash if it has protected snapshots?
After discussing this at this mornings standup, we decided to display a warning regarding the unprotected snapshots and if the user confirms he wants to delete, we unprotect the snapshots automatically and delete the rbd and all snapshots.
- Status changed from In Progress to Fix Under Review
- Status changed from Fix Under Review to Resolved
- Related to Bug #42330: nautilus: mgr/dashboard: Error getting image configuration during deletion added
Backporting note: a manual (non-cherry-pick) backport to nautilus has been undertaken via #42330
- Project changed from mgr to Dashboard
- Category changed from 139 to Component - RBD
Also available in: Atom
PDF