1
0
mirror of https://github.com/ceph/ceph synced 2025-03-23 02:38:31 +00:00

Merge pull request from liewegas/wip-jewel-x

ceph_test_rados_api_tier: tolerate ENOENT from 'pg scrub'

Reviewed-by: Kefu Chai <kchai@redhat.com>
This commit is contained in:
Sage Weil 2017-04-27 11:43:12 -05:00 committed by GitHub
commit add2015fe3

View File

@ -530,11 +530,18 @@ TEST_F(LibRadosTwoPoolsPP, PromoteSnapScrub) {
IoCtx cache_ioctx;
ASSERT_EQ(0, cluster.ioctx_create(cache_pool_name.c_str(), cache_ioctx));
for (int i=0; i<10; ++i) {
ostringstream ss;
ss << "{\"prefix\": \"pg scrub\", \"pgid\": \""
<< cache_ioctx.get_id() << "." << i
<< "\"}";
cluster.mon_command(ss.str(), inbl, NULL, NULL);
do {
ostringstream ss;
ss << "{\"prefix\": \"pg scrub\", \"pgid\": \""
<< cache_ioctx.get_id() << "." << i
<< "\"}";
int r = cluster.mon_command(ss.str(), inbl, NULL, NULL);
if (r == -ENOENT || // in case mgr osdmap is stale
r == -EAGAIN) {
sleep(5);
continue;
}
} while (false);
}
// give it a few seconds to go. this is sloppy but is usually enough time
@ -3072,8 +3079,11 @@ TEST_F(LibRadosTwoPoolsECPP, PromoteSnap) {
<< hash
<< "\"}";
int r = cluster.mon_command(ss.str(), inbl, NULL, NULL);
if (r == -EAGAIN)
if (r == -EAGAIN ||
r == -ENOENT) { // in case mgr osdmap is a bit stale
sleep(5);
continue;
}
ASSERT_EQ(0, r);
break;
}