Bug 1208278 - RBD snapshot, created while flattening image, is unremovable
Summary: RBD snapshot, created while flattening image, is unremovable
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Ceph Storage
Classification: Red Hat Storage
Component: RBD
Version: 1.2.3
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: rc
: 1.2.4
Assignee: ceph-eng-bugs
QA Contact: ceph-qe-bugs
URL:
Whiteboard:
Depends On: 1271774
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-04-01 20:02 UTC by Jason Dillaman
Modified: 2022-02-21 18:13 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-12-08 16:28:50 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Ceph Project Bug Tracker 11113 0 None None None Never
Red Hat Issue Tracker RHCEPH-3260 0 None None None 2022-02-21 18:13:20 UTC

Description Jason Dillaman 2015-04-01 20:02:15 UTC
Description of problem:
Due to the decentralized approach to RBD image management, it is possible to snapshot an image which is being concurrently flattened.  Since the flatten operation would not have known about the new snapshot, it will detach the image from its parent (if no other snapshots exist).  

This will allow the parent image snapshot to be unprotected and removed since it doesn't know about the new dependent snapshot.

This condition exposes issues that can cause 'rbd ls -l' to crash due to the missing parent and prevents the removal of the corrupt snapshot.

How reproducible:
Race condition

Steps to Reproduce:
1. Clone an image from an origin snapshot
2. Flatten the clone
3. While flattening, snapshot the clone
4. Delete the origin snapshot and image

Actual results:
Orphaned snapshot cannot be removed, 'rbd ls -l' crashes.

Expected results:
Orphaned snapshot should be able to be removed, 'rbd ls -l' shouldn't crash.

Comment 1 Ken Dreyer (Red Hat) 2015-04-08 22:03:14 UTC
Removing the dependency on 1210037 - this is a bug to fix in 1.2.4.

Comment 2 Ken Dreyer (Red Hat) 2015-10-19 17:34:08 UTC
https://github.com/ceph/ceph/pull/4245 has shipped in v0.80.10 upstream, so we'll take in in as part of the RHCS 1.2 rebase to Ceph v0.80.11 (bz 1271774).

(For the record, this is a Firefly-only bug. The fix was present in the initial v0.94 release of Hammer.)

Comment 3 Ken Dreyer (Red Hat) 2015-12-08 16:28:50 UTC
Closing all RHCS 1.2 bugs, since we are not planning to do a formal RHCS 1.2.4 release.

This particular issue was already fixed in the initial RHCS 1.3.0 release.


Note You need to log in before you can comment on or make changes to this bug.