From 967476eaee1a3e71f3be8f76200d3c1e36f5f614 Mon Sep 17 00:00:00 2001 From: Islam AbdelRahman Date: Thu, 5 May 2016 11:24:08 -0700 Subject: [PATCH] Fix valgrind (DBIteratorTest.ReadAhead) Summary: This test is failing under valgrind because we dont delete the Env that we allocated Test Plan: run the test under valgrind Reviewers: andrewkr, yhchiang, yiwu, sdong Reviewed By: sdong Subscribers: andrewkr, dhruba Differential Revision: https://reviews.facebook.net/D57693 --- db/db_iterator_test.cc | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/db/db_iterator_test.cc b/db/db_iterator_test.cc index 25fdfabd8..bb771554f 100644 --- a/db/db_iterator_test.cc +++ b/db/db_iterator_test.cc @@ -1528,9 +1528,8 @@ TEST_F(DBIteratorTest, IteratorWithLocalStatistics) { TEST_F(DBIteratorTest, ReadAhead) { Options options; - auto env = new SpecialEnv(Env::Default()); - env->count_random_reads_ = true; - options.env = env; + env_->count_random_reads_ = true; + options.env = env_; options.disable_auto_compactions = true; options.write_buffer_size = 4 << 20; options.statistics = rocksdb::CreateDBStatistics(); @@ -1561,22 +1560,22 @@ TEST_F(DBIteratorTest, ReadAhead) { ASSERT_EQ("1,1,1", FilesPerLevel()); #endif // !ROCKSDB_LITE - env->random_read_bytes_counter_ = 0; + env_->random_read_bytes_counter_ = 0; options.statistics->setTickerCount(NO_FILE_OPENS, 0); ReadOptions read_options; auto* iter = db_->NewIterator(read_options); iter->SeekToFirst(); int64_t num_file_opens = TestGetTickerCount(options, NO_FILE_OPENS); - int64_t bytes_read = env->random_read_bytes_counter_; + int64_t bytes_read = env_->random_read_bytes_counter_; delete iter; - env->random_read_bytes_counter_ = 0; + env_->random_read_bytes_counter_ = 0; options.statistics->setTickerCount(NO_FILE_OPENS, 0); read_options.readahead_size = 1024 * 10; iter = db_->NewIterator(read_options); iter->SeekToFirst(); int64_t num_file_opens_readahead = TestGetTickerCount(options, NO_FILE_OPENS); - int64_t bytes_read_readahead = env->random_read_bytes_counter_; + int64_t bytes_read_readahead = env_->random_read_bytes_counter_; delete iter; ASSERT_EQ(num_file_opens + 3, num_file_opens_readahead); ASSERT_GT(bytes_read_readahead, bytes_read);