From: Igor Fedotov Date: Wed, 14 Sep 2016 12:19:49 +0000 (+0000) Subject: test/objectstore: extend compression test case to use both snappy & zlib X-Git-Tag: v11.0.1~244^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=bd8efd83e4204c7b19a1c137c55ef6d31231cc9b;p=ceph.git test/objectstore: extend compression test case to use both snappy & zlib Signed-off-by: Igor Fedotov --- diff --git a/src/test/objectstore/store_test.cc b/src/test/objectstore/store_test.cc index 12d5c8a890b..25fe3384a9a 100644 --- a/src/test/objectstore/store_test.cc +++ b/src/test/objectstore/store_test.cc @@ -695,16 +695,11 @@ TEST_P(StoreTest, BufferCacheReadTest) { } } -TEST_P(StoreTest, CompressionTest) { +void doCompressionTest( boost::scoped_ptr& store) +{ ObjectStore::Sequencer osr("test"); int r; coll_t cid; - if (string(GetParam()) != "bluestore") - return; - - g_conf->set_val("bluestore_compression", "force"); - g_ceph_context->_conf->apply_changes(NULL); - ghobject_t hoid(hobject_t(sobject_t("Object 1", CEPH_NOSNAP))); { bufferlist in; @@ -743,8 +738,8 @@ TEST_P(StoreTest, CompressionTest) { cerr << "CompressibleData (4xAU) Write" << std::endl; r = apply_transaction(store, &osr, std::move(t)); ASSERT_EQ(r, 0); - r = store->read(cid, hoid, 0, data.size() , newdata); + ASSERT_EQ(r, (int)data.size()); { bufferlist expected; @@ -904,6 +899,24 @@ TEST_P(StoreTest, CompressionTest) { r = apply_transaction(store, &osr, std::move(t)); ASSERT_EQ(r, 0); } +} + +TEST_P(StoreTest, CompressionTest) { + if (string(GetParam()) != "bluestore") + return; + + g_conf->set_val("bluestore_compression_algorithm", "snappy"); + g_conf->set_val("bluestore_compression", "force"); + g_ceph_context->_conf->apply_changes(NULL); + + doCompressionTest(store); + + g_conf->set_val("bluestore_compression_algorithm", "zlib"); + g_conf->set_val("bluestore_compression", "force"); + g_ceph_context->_conf->apply_changes(NULL); + + doCompressionTest(store); + g_conf->set_val("bluestore_compression", "none"); g_ceph_context->_conf->apply_changes(NULL); }