Actions
Bug #8183
closedosd: In a tiered pool after successful removal request object still appears to be there
Status:
Won't Fix
Priority:
Urgent
Assignee:
-
Category:
-
Target version:
-
% Done:
0%
Source:
other
Tags:
Backport:
Regression:
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):
Description
What works:
After a removal a second removal returns ENOENT
After a removal the creation of another object with the same name succeeds
What doesn't work:
The object store retains an empty file for the object and so "rados ls" returns the object
$ ./rados -p cache put testfile ceph.conf $ find dev -name '*testfile*' -ls 398539 8 -rw-r--r-- 1 dzafman dzafman 3205 Apr 22 19:45 dev/osd0/current/3.6_head/testfile__head_551A2B36__3 $ ./rados -p cache rm testfile $ ./rados -p cache rm testfile error removing cache/testfile: (2) No such file or directory $ ./rados -p cache ls testfile $ find dev -name '*testfile*' -ls 398539 4 -rw-r--r-- 1 dzafman dzafman 0 Apr 22 19:46 dev/osd0/current/3.6_head/testfile__head_551A2B36__3 $ ./rados -p cache put testfile ceph.conf $ find dev -name '*testfile*' -ls 398539 8 -rw-r--r-- 1 dzafman dzafman 3205 Apr 22 19:52 dev/osd0/current/3.6_head/testfile__head_551A2B36__3
Updated by David Zafman almost 10 years ago
- Subject changed from After successful removal request object still appears to be there to osd: In a tiered pool after successful removal request object still appears to be there
Updated by Sage Weil almost 10 years ago
- Status changed from New to Won't Fix
This is as expected. The list_objects and rados ls are basically not coherent when you're using a cache pool. In this case, the object you see is the whiteout in the cache pool. In general, you will see a subset of objects listed there.
Someday we may fix this, but we need to come up with a sane design first. In the meantime, nothing uses the list objects interfaces except these cli utilities and various unit tests.
Actions