]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
test: add read balance mode test case 33493/head
authorzhengyin <zhengyin@cmss.chinamoblie.com>
Tue, 25 Feb 2020 14:51:36 +0000 (22:51 +0800)
committerzhengyin <zhengyin@cmss.chinamoblie.com>
Wed, 26 Feb 2020 13:33:27 +0000 (21:33 +0800)
Signed-off-by: Zheng Yin <zhengyin@cmss.chinamobile.com>
qa/suites/rbd/qemu/features/readbalance.yaml [new file with mode: 0644]
src/test/librbd/mock/MockImageCtx.h
src/test/librbd/test_librbd.cc

diff --git a/qa/suites/rbd/qemu/features/readbalance.yaml b/qa/suites/rbd/qemu/features/readbalance.yaml
new file mode 100644 (file)
index 0000000..463925d
--- /dev/null
@@ -0,0 +1,11 @@
+overrides:
+  ceph:
+    conf:
+      client:
+        rbd read from replica policy: balance
+
+tasks:
+- exec:
+    osd.0:
+      - ceph osd require-osd-release octopus
+      - ceph osd set-require-min-compat-client octopus
index 870bbe08dcc8d018f202151c8b7d0a21af3860a7..32097393ea3340a89e75db10aa4e51c8bf40f989 100644 (file)
@@ -98,6 +98,7 @@ struct MockImageCtx {
       blkin_trace_all(image_ctx.blkin_trace_all),
       enable_alloc_hint(image_ctx.enable_alloc_hint),
       alloc_hint_flags(image_ctx.alloc_hint_flags),
+      read_flags(image_ctx.read_flags),
       ignore_migrating(image_ctx.ignore_migrating),
       enable_sparse_copyup(image_ctx.enable_sparse_copyup),
       mtime_update_interval(image_ctx.mtime_update_interval),
@@ -305,6 +306,7 @@ struct MockImageCtx {
   bool blkin_trace_all;
   bool enable_alloc_hint;
   uint32_t alloc_hint_flags;
+  uint32_t read_flags;
   bool ignore_migrating;
   bool enable_sparse_copyup;
   uint64_t mtime_update_interval;
index 7529a1ce57e3fa6bbb323e4952d8bcae629dcb60..24d9822a7078d588d930f84b24be2372de10f1b5 100644 (file)
@@ -1948,6 +1948,7 @@ TEST_F(TestLibRBD, TestIO)
   uint64_t size = 2 << 20;  
 
   ASSERT_EQ(0, create_image(ioctx, name.c_str(), size, &order));
+  ASSERT_EQ(0, rados_conf_set(_cluster, "rbd_read_from_replica_policy", "balance"));
   ASSERT_EQ(0, rbd_open(ioctx, name.c_str(), &image, NULL));
   
   char test_data[TEST_IO_SIZE + 1];