From e92a361d2b3e667c1af848a4e789d98457472469 Mon Sep 17 00:00:00 2001 From: Ernesto Puerta Date: Tue, 30 Apr 2024 10:51:23 +0200 Subject: [PATCH] mgr/dashboard: exclude cloned-deleted RBD snaps Fixes: https://tracker.ceph.com/issues/65698 Signed-off-by: Ernesto Puerta (cherry picked from commit 8b1ef2ee411b7c6fb52825bf577860f3727738c2) --- src/pybind/mgr/dashboard/services/rbd.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/pybind/mgr/dashboard/services/rbd.py b/src/pybind/mgr/dashboard/services/rbd.py index c6137930317f0..ec65b1fd5e119 100644 --- a/src/pybind/mgr/dashboard/services/rbd.py +++ b/src/pybind/mgr/dashboard/services/rbd.py @@ -360,6 +360,10 @@ class RbdService(object): # snapshots stat['snapshots'] = [] for snap in img.list_snaps(): + # Skip trash snapshots (cloned-and-then-deleted format v2 snapshots) + if snap['namespace'] == rbd.RBD_SNAP_NAMESPACE_TYPE_TRASH: + continue + try: snap['mirror_mode'] = MIRROR_IMAGE_MODE(img.mirror_image_get_mode()).name except ValueError as ex: @@ -369,7 +373,7 @@ class RbdService(object): img.get_snap_timestamp(snap['id']).isoformat()) snap['is_protected'] = None - if mirror_mode != rbd.RBD_MIRROR_IMAGE_MODE_SNAPSHOT: + if snap['namespace'] == rbd.RBD_SNAP_NAMESPACE_TYPE_USER: snap['is_protected'] = img.is_protected_snap(snap['name']) snap['used_bytes'] = None snap['children'] = [] -- 2.39.5