From: Sage Weil Date: Fri, 21 Jun 2013 21:53:22 +0000 (-0700) Subject: librados: make cmd test tolerate NXIO for osd commands X-Git-Tag: v0.65~16 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=27912e58582ba60e54696c2b0dc0b690be1e161c;p=ceph.git librados: make cmd test tolerate NXIO for osd commands The cluster may be thrashing underneath us; tolerate NXIO in case the OSD is currently down. Signed-off-by: Sage Weil --- diff --git a/src/test/librados/cmd.cc b/src/test/librados/cmd.cc index 39484d76af03..6abcca9772b0 100644 --- a/src/test/librados/cmd.cc +++ b/src/test/librados/cmd.cc @@ -62,17 +62,22 @@ TEST(LibRadosCmd, OSDCmd) { std::string pool_name = get_temp_pool_name(); ASSERT_EQ("", create_one_pool(pool_name, &cluster)); + int r; char *buf, *st; size_t buflen, stlen; char *cmd[2]; cmd[1] = NULL; + // note: tolerate NXIO here in case the cluster is thrashing out underneath us. cmd[0] = (char *)"asdfasdf"; - ASSERT_EQ(-22, rados_osd_command(cluster, 0, (const char **)cmd, 1, "", 0, &buf, &buflen, &st, &stlen)); + r = rados_osd_command(cluster, 0, (const char **)cmd, 1, "", 0, &buf, &buflen, &st, &stlen); + ASSERT_TRUE(r == -22 || r == -ENXIO); cmd[0] = (char *)"version"; - ASSERT_EQ(-22, rados_osd_command(cluster, 0, (const char **)cmd, 1, "", 0, &buf, &buflen, &st, &stlen)); + r = rados_osd_command(cluster, 0, (const char **)cmd, 1, "", 0, &buf, &buflen, &st, &stlen); + ASSERT_TRUE(r == -22 || r == -ENXIO); cmd[0] = (char *)"{\"prefix\":\"version\"}"; - ASSERT_EQ(0, rados_osd_command(cluster, 0, (const char **)cmd, 1, "", 0, &buf, &buflen, &st, &stlen)); + r = rados_osd_command(cluster, 0, (const char **)cmd, 1, "", 0, &buf, &buflen, &st, &stlen); + ASSERT_TRUE(r == 0 || r == -ENXIO); ASSERT_LT(0u, buflen); rados_buffer_free(buf); rados_buffer_free(st);