]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
tests: ceph_test_rados_api_watch_notify LibRadosWatchNotify.AioWatchDelete reconnect
authorNitzanMordhai <nmordech@redhat.com>
Wed, 19 Oct 2022 12:42:16 +0000 (12:42 +0000)
committerNitzanMordhai <nmordech@redhat.com>
Tue, 31 Jan 2023 05:43:29 +0000 (07:43 +0200)
During test LibRadosWatchNotify.AioWatchDelete rados_watch_check can return error -102
if reconnect happened, in that case Broken pipe reconnect and -102 returned

Signed-off-by: Nitzan Mordechai <nmordech@redhat.com>
(cherry picked from commit 0184c4bd930f5840e4b21a808db3f6d7d484bfce)

src/test/librados/watch_notify.cc

index 79cdd5abe75a2f0b401622bd383772e99d7c05ad..90c28be37eae9ee5701fbf53967f6b09ba7d34a2 100644 (file)
@@ -240,7 +240,10 @@ TEST_F(LibRadosWatchNotify, AioWatchDelete) {
   }
   ASSERT_TRUE(left > 0);
   ASSERT_EQ(-ENOTCONN, notify_err);
-  ASSERT_EQ(-ENOTCONN, rados_watch_check(ioctx, handle));
+  int rados_watch_check_err = rados_watch_check(ioctx, handle);
+  // We may hit ENOENT due to socket failure injection and a forced reconnect
+  EXPECT_TRUE(rados_watch_check_err == -ENOTCONN || rados_watch_check_err == -ENOENT)
+    << "Where rados_watch_check_err = " << rados_watch_check_err;
   ASSERT_EQ(0, rados_aio_create_completion2(nullptr, nullptr, &comp));
   rados_aio_unwatch(ioctx, handle, comp);
   ASSERT_EQ(0, rados_aio_wait_for_complete(comp));