Project

General

Profile

Actions

Bug #2339

closed

osd: EBUSY on object delete when watchers present

Added by Sage Weil almost 12 years ago. Updated over 9 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Category:
OSD
Target version:
-
% Done:

0%

Source:
Community (user)
Tags:
Backport:
Regression:
Severity:
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

in particular, you can't delete an rbd image that has watchers. that may be okay if there is someone actively mounting it, but it's not okay if we don't properly time out the watchers. we could:

- make delete remove timed-out watchers.  then EBUSY or proceed.
- make a force-delete that removed even when watchers are present.

either or both may be sufficient...

see #2311


Related issues 2 (0 open2 closed)

Related to Ceph - Fix #4205: librados: Improve Watch-notify semanticsResolved02/19/2013

Actions
Is duplicate of Ceph - Fix #2343: librados, osd: notify with special type on object deletionResolved04/24/2012

Actions
Actions #1

Updated by Sage Weil almost 12 years ago

  • Priority changed from High to Normal
  • Target version deleted (v0.47)

After some discussion, it seems like the right path is to:

- associate an error code with notify events (e.g., 0 = successful notify, ENOENT or -ENODEV => object has been deleted)
send a notify on delete

Sadly the librados c and c++ apis for notify needs to be changed to deliver that all the way through (and the opcode removed at the same time). Luckily neither rbd or rgw care about it, so we can defer that until the next api revision.

Actions #2

Updated by Sage Weil almost 12 years ago

see #2343

Actions #3

Updated by Sage Weil over 11 years ago

when this is fixed, testrados_watch_notify needs to get its last test reenabled! it is currently disabled due to this bug.

Actions #4

Updated by Sage Weil over 9 years ago

  • Status changed from 12 to Resolved
Actions

Also available in: Atom PDF