]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
ceph_test_rados_api_tier: partial test for promote vs snap trim race
authorSage Weil <sage@inktank.com>
Thu, 9 Jan 2014 10:01:48 +0000 (02:01 -0800)
committerSage Weil <sage@inktank.com>
Tue, 14 Jan 2014 00:19:49 +0000 (16:19 -0800)
commit8cab9e7657b5879f3ec3a42ae002d858b51c6cfe
treeb590e263c3111ec780cbdfd729e0fc401afb962f
parent8221a2a54dc04fa65757c2e95e89404d76859a1e
ceph_test_rados_api_tier: partial test for promote vs snap trim race

This reliably returns ENODEV due to the test at the finish of flush.  Not
because we are actually racing with trim, though: the trimmer doesn't run
at all.  I believe it captures the important property, though.  Namely:
we should not write a promoted object that is "behind" the snap trimmer's
progress.  The fact that we are in front of it (the trimmer hasn't started
yet) should not matter since the object is logically deleted anyway.

We probably want to make the OSD return ENODEV on read in the normal case
when you try to access a clone that is pending trimming.

Signed-off-by: Sage Weil <sage@inktank.com>
src/test/librados/tier.cc