From: Sage Weil Date: Mon, 20 Jun 2016 13:51:56 +0000 (-0400) Subject: ceph_test_objectstore: zero-length write should not affect object size X-Git-Tag: v11.0.0~110^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=134ee89260bc2534fa9f8fd4e6404bb754e168f9;p=ceph.git ceph_test_objectstore: zero-length write should not affect object size Signed-off-by: Sage Weil --- diff --git a/src/test/objectstore/store_test.cc b/src/test/objectstore/store_test.cc index f459fff0cf90..af02b96729bf 100644 --- a/src/test/objectstore/store_test.cc +++ b/src/test/objectstore/store_test.cc @@ -1974,6 +1974,31 @@ TEST_P(StoreTest, MiscFragmentTests) { } +TEST_P(StoreTest, ZeroLengthWrite) { + ObjectStore::Sequencer osr("test"); + int r; + coll_t cid; + ghobject_t hoid(hobject_t(sobject_t("foo", CEPH_NOSNAP))); + { + ObjectStore::Transaction t; + t.create_collection(cid, 0); + t.touch(cid, hoid); + r = apply_transaction(store, &osr, std::move(t)); + ASSERT_EQ(r, 0); + } + { + ObjectStore::Transaction t; + bufferlist empty; + t.write(cid, hoid, 1048576, 0, empty); + r = apply_transaction(store, &osr, std::move(t)); + ASSERT_EQ(r, 0); + } + struct stat stat; + r = store->stat(cid, hoid, &stat); + ASSERT_EQ(0, r); + ASSERT_EQ(0, stat.st_size); +} + TEST_P(StoreTest, SimpleAttrTest) { ObjectStore::Sequencer osr("test"); int r;