From: Igor Canadi Date: Tue, 22 Apr 2014 01:24:47 +0000 (-0700) Subject: Fix allocate test in 2.8.fb.trunk. X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8cd08fdca499c55c13653e94533fa975fedc224d;p=rocksdb.git Fix allocate test in 2.8.fb.trunk. Merging: https://github.com/facebook/rocksdb/commit/c7076a7a0510eb69ced78ac7cdb03442c810e63c and https://github.com/facebook/rocksdb/commit/05c168658e60d9748fe873f316a2c0e076d6dd7b into 2.8.fb.trunk --- diff --git a/util/env_test.cc b/util/env_test.cc index 0a83037c3..5d5eeaef0 100644 --- a/util/env_test.cc +++ b/util/env_test.cc @@ -290,7 +290,6 @@ TEST(EnvPosixTest, AllocateTest) { // allocate 100 MB size_t kPreallocateSize = 100 * 1024 * 1024; size_t kBlockSize = 512; - size_t kPageSize = 4096; std::string data = "test"; wfile->SetPreallocationBlockSize(kPreallocateSize); ASSERT_OK(wfile->Append(Slice(data))); @@ -299,8 +298,9 @@ TEST(EnvPosixTest, AllocateTest) { struct stat f_stat; stat(fname.c_str(), &f_stat); ASSERT_EQ((unsigned int)data.size(), f_stat.st_size); + auto st_blocks = f_stat.st_blocks; // verify that blocks are preallocated - ASSERT_EQ((unsigned int)(kPreallocateSize / kBlockSize), f_stat.st_blocks); + ASSERT_LE((unsigned int)(kPreallocateSize / kBlockSize), st_blocks); // close the file, should deallocate the blocks wfile.reset(); @@ -308,8 +308,7 @@ TEST(EnvPosixTest, AllocateTest) { stat(fname.c_str(), &f_stat); ASSERT_EQ((unsigned int)data.size(), f_stat.st_size); // verify that preallocated blocks were deallocated on file close - size_t data_blocks_pages = ((data.size() + kPageSize - 1) / kPageSize); - ASSERT_EQ((unsigned int)(data_blocks_pages * kPageSize / kBlockSize), f_stat.st_blocks); + ASSERT_LT(f_stat.st_blocks, st_blocks); } #endif