[directory includes cleanup] Finish removing util->db dependencies

main
Andrew Kryczka 9 years ago
parent acd7d58695
commit 167bd8856d
  1. 9
      CMakeLists.txt
  2. 2
      Makefile
  3. 2
      db/auto_roll_logger.cc
  4. 0
      db/auto_roll_logger.h
  5. 2
      db/auto_roll_logger_test.cc
  6. 4
      db/db_impl.cc
  7. 3
      db/db_info_dumper.cc
  8. 0
      db/db_info_dumper.h
  9. 100
      db/db_test.cc
  10. 0
      memtable/skiplistrep.cc
  11. 0
      memtable/vectorrep.cc
  12. 10
      src.mk
  13. 1
      util/file_util.cc
  14. 53
      util/memenv_test.cc
  15. 47
      util/mock_env_test.cc
  16. 1
      util/options.cc
  17. 1
      util/testutil.h
  18. 2
      utilities/backupable/backupable_db_test.cc

@ -99,6 +99,7 @@ add_subdirectory(third-party/gtest-1.7.0/fused-src/gtest)
# Main library source code # Main library source code
set(SOURCES set(SOURCES
db/auto_roll_logger.cc
db/builder.cc db/builder.cc
db/c.cc db/c.cc
db/column_family.cc db/column_family.cc
@ -114,6 +115,7 @@ set(SOURCES
db/db_impl_debug.cc db/db_impl_debug.cc
db/db_impl_experimental.cc db/db_impl_experimental.cc
db/db_impl_readonly.cc db/db_impl_readonly.cc
db/db_info_dumper.cc
db/db_iter.cc db/db_iter.cc
db/event_helpers.cc db/event_helpers.cc
db/experimental.cc db/experimental.cc
@ -149,6 +151,8 @@ set(SOURCES
memtable/hash_cuckoo_rep.cc memtable/hash_cuckoo_rep.cc
memtable/hash_linklist_rep.cc memtable/hash_linklist_rep.cc
memtable/hash_skiplist_rep.cc memtable/hash_skiplist_rep.cc
memtable/skiplistrep.cc
memtable/vectorrep.cc
port/stack_trace.cc port/stack_trace.cc
port/win/env_win.cc port/win/env_win.cc
port/win/port_win.cc port/win/port_win.cc
@ -194,7 +198,6 @@ set(SOURCES
util/comparator.cc util/comparator.cc
util/concurrent_arena.cc util/concurrent_arena.cc
util/crc32c.cc util/crc32c.cc
util/db_info_dumper.cc
util/delete_scheduler_impl.cc util/delete_scheduler_impl.cc
util/dynamic_bloom.cc util/dynamic_bloom.cc
util/env.cc util/env.cc
@ -224,7 +227,6 @@ set(SOURCES
util/perf_level.cc util/perf_level.cc
util/random.cc util/random.cc
util/rate_limiter.cc util/rate_limiter.cc
util/skiplistrep.cc
util/slice.cc util/slice.cc
util/statistics.cc util/statistics.cc
util/status.cc util/status.cc
@ -238,7 +240,6 @@ set(SOURCES
util/thread_status_updater.cc util/thread_status_updater.cc
util/thread_status_util.cc util/thread_status_util.cc
util/thread_status_util_debug.cc util/thread_status_util_debug.cc
util/vectorrep.cc
util/xfunc.cc util/xfunc.cc
util/xxhash.cc util/xxhash.cc
utilities/backupable/backupable_db.cc utilities/backupable/backupable_db.cc
@ -304,6 +305,7 @@ set(APPS
set(C_TESTS db/c_test.c) set(C_TESTS db/c_test.c)
set(TESTS set(TESTS
db/auto_roll_logger_test.cc
db/column_family_test.cc db/column_family_test.cc
db/compact_files_test.cc db/compact_files_test.cc
db/compaction_iterator_test.cc db/compaction_iterator_test.cc
@ -365,7 +367,6 @@ set(TESTS
tools/sst_dump_test.cc tools/sst_dump_test.cc
util/arena_test.cc util/arena_test.cc
util/autovector_test.cc util/autovector_test.cc
util/auto_roll_logger_test.cc
util/bloom_test.cc util/bloom_test.cc
util/cache_test.cc util/cache_test.cc
util/coding_test.cc util/coding_test.cc

@ -1019,7 +1019,7 @@ manual_compaction_test: db/manual_compaction_test.o $(LIBOBJECTS) $(TESTHARNESS)
filelock_test: util/filelock_test.o $(LIBOBJECTS) $(TESTHARNESS) filelock_test: util/filelock_test.o $(LIBOBJECTS) $(TESTHARNESS)
$(AM_LINK) $(AM_LINK)
auto_roll_logger_test: util/auto_roll_logger_test.o $(LIBOBJECTS) $(TESTHARNESS) auto_roll_logger_test: db/auto_roll_logger_test.o $(LIBOBJECTS) $(TESTHARNESS)
$(AM_LINK) $(AM_LINK)
memtable_list_test: db/memtable_list_test.o $(LIBOBJECTS) $(TESTHARNESS) memtable_list_test: db/memtable_list_test.o $(LIBOBJECTS) $(TESTHARNESS)

@ -3,7 +3,7 @@
// LICENSE file in the root directory of this source tree. An additional grant // LICENSE file in the root directory of this source tree. An additional grant
// of patent rights can be found in the PATENTS file in the same directory. // of patent rights can be found in the PATENTS file in the same directory.
// //
#include "util/auto_roll_logger.h" #include "db/auto_roll_logger.h"
#include "util/mutexlock.h" #include "util/mutexlock.h"
using namespace std; using namespace std;

@ -10,8 +10,8 @@
#include <fstream> #include <fstream>
#include <iterator> #include <iterator>
#include <algorithm> #include <algorithm>
#include "db/auto_roll_logger.h"
#include "util/testharness.h" #include "util/testharness.h"
#include "util/auto_roll_logger.h"
#include "rocksdb/db.h" #include "rocksdb/db.h"
#include <sys/stat.h> #include <sys/stat.h>
#include <errno.h> #include <errno.h>

@ -31,8 +31,10 @@
#include <utility> #include <utility>
#include <vector> #include <vector>
#include "db/auto_roll_logger.h"
#include "db/builder.h" #include "db/builder.h"
#include "db/compaction_job.h" #include "db/compaction_job.h"
#include "db/db_info_dumper.h"
#include "db/db_iter.h" #include "db/db_iter.h"
#include "db/dbformat.h" #include "db/dbformat.h"
#include "db/event_helpers.h" #include "db/event_helpers.h"
@ -76,13 +78,11 @@
#include "table/merger.h" #include "table/merger.h"
#include "table/table_builder.h" #include "table/table_builder.h"
#include "table/two_level_iterator.h" #include "table/two_level_iterator.h"
#include "util/auto_roll_logger.h"
#include "util/autovector.h" #include "util/autovector.h"
#include "util/build_version.h" #include "util/build_version.h"
#include "util/coding.h" #include "util/coding.h"
#include "util/compression.h" #include "util/compression.h"
#include "util/crc32c.h" #include "util/crc32c.h"
#include "util/db_info_dumper.h"
#include "util/file_reader_writer.h" #include "util/file_reader_writer.h"
#include "util/file_util.h" #include "util/file_util.h"
#include "util/iostats_context_imp.h" #include "util/iostats_context_imp.h"

@ -7,6 +7,8 @@
#define __STDC_FORMAT_MACROS #define __STDC_FORMAT_MACROS
#endif #endif
#include "db/db_info_dumper.h"
#include <inttypes.h> #include <inttypes.h>
#include <stdio.h> #include <stdio.h>
#include <string> #include <string>
@ -16,7 +18,6 @@
#include "db/filename.h" #include "db/filename.h"
#include "rocksdb/options.h" #include "rocksdb/options.h"
#include "rocksdb/env.h" #include "rocksdb/env.h"
#include "util/db_info_dumper.h"
namespace rocksdb { namespace rocksdb {

@ -122,6 +122,106 @@ class DBTestWithParam
bool exclusive_manual_compaction_; bool exclusive_manual_compaction_;
}; };
TEST_F(DBTest, MockEnvTest) {
unique_ptr<MockEnv> env{new MockEnv(Env::Default())};
Options options;
options.create_if_missing = true;
options.env = env.get();
DB* db;
const Slice keys[] = {Slice("aaa"), Slice("bbb"), Slice("ccc")};
const Slice vals[] = {Slice("foo"), Slice("bar"), Slice("baz")};
ASSERT_OK(DB::Open(options, "/dir/db", &db));
for (size_t i = 0; i < 3; ++i) {
ASSERT_OK(db->Put(WriteOptions(), keys[i], vals[i]));
}
for (size_t i = 0; i < 3; ++i) {
std::string res;
ASSERT_OK(db->Get(ReadOptions(), keys[i], &res));
ASSERT_TRUE(res == vals[i]);
}
Iterator* iterator = db->NewIterator(ReadOptions());
iterator->SeekToFirst();
for (size_t i = 0; i < 3; ++i) {
ASSERT_TRUE(iterator->Valid());
ASSERT_TRUE(keys[i] == iterator->key());
ASSERT_TRUE(vals[i] == iterator->value());
iterator->Next();
}
ASSERT_TRUE(!iterator->Valid());
delete iterator;
// TEST_FlushMemTable() is not supported in ROCKSDB_LITE
#ifndef ROCKSDB_LITE
DBImpl* dbi = reinterpret_cast<DBImpl*>(db);
ASSERT_OK(dbi->TEST_FlushMemTable());
for (size_t i = 0; i < 3; ++i) {
std::string res;
ASSERT_OK(db->Get(ReadOptions(), keys[i], &res));
ASSERT_TRUE(res == vals[i]);
}
#endif // ROCKSDB_LITE
delete db;
}
TEST_F(DBTest, MemEnvTest) {
unique_ptr<Env> env{NewMemEnv(Env::Default())};
Options options;
options.create_if_missing = true;
options.env = env.get();
DB* db;
const Slice keys[] = {Slice("aaa"), Slice("bbb"), Slice("ccc")};
const Slice vals[] = {Slice("foo"), Slice("bar"), Slice("baz")};
ASSERT_OK(DB::Open(options, "/dir/db", &db));
for (size_t i = 0; i < 3; ++i) {
ASSERT_OK(db->Put(WriteOptions(), keys[i], vals[i]));
}
for (size_t i = 0; i < 3; ++i) {
std::string res;
ASSERT_OK(db->Get(ReadOptions(), keys[i], &res));
ASSERT_TRUE(res == vals[i]);
}
Iterator* iterator = db->NewIterator(ReadOptions());
iterator->SeekToFirst();
for (size_t i = 0; i < 3; ++i) {
ASSERT_TRUE(iterator->Valid());
ASSERT_TRUE(keys[i] == iterator->key());
ASSERT_TRUE(vals[i] == iterator->value());
iterator->Next();
}
ASSERT_TRUE(!iterator->Valid());
delete iterator;
DBImpl* dbi = reinterpret_cast<DBImpl*>(db);
ASSERT_OK(dbi->TEST_FlushMemTable());
for (size_t i = 0; i < 3; ++i) {
std::string res;
ASSERT_OK(db->Get(ReadOptions(), keys[i], &res));
ASSERT_TRUE(res == vals[i]);
}
delete db;
options.create_if_missing = false;
ASSERT_OK(DB::Open(options, "/dir/db", &db));
for (size_t i = 0; i < 3; ++i) {
std::string res;
ASSERT_OK(db->Get(ReadOptions(), keys[i], &res));
ASSERT_TRUE(res == vals[i]);
}
delete db;
}
TEST_F(DBTest, WriteEmptyBatch) { TEST_F(DBTest, WriteEmptyBatch) {
Options options; Options options;
options.env = env_; options.env = env_;

@ -1,5 +1,6 @@
# These are the sources from which librocksdb.a is built: # These are the sources from which librocksdb.a is built:
LIB_SOURCES = \ LIB_SOURCES = \
db/auto_roll_logger.cc \
db/builder.cc \ db/builder.cc \
db/c.cc \ db/c.cc \
db/column_family.cc \ db/column_family.cc \
@ -15,6 +16,7 @@ LIB_SOURCES = \
db/db_impl_debug.cc \ db/db_impl_debug.cc \
db/db_impl_readonly.cc \ db/db_impl_readonly.cc \
db/db_impl_experimental.cc \ db/db_impl_experimental.cc \
db/db_info_dumper.cc \
db/db_iter.cc \ db/db_iter.cc \
db/experimental.cc \ db/experimental.cc \
db/event_helpers.cc \ db/event_helpers.cc \
@ -50,6 +52,8 @@ LIB_SOURCES = \
memtable/hash_cuckoo_rep.cc \ memtable/hash_cuckoo_rep.cc \
memtable/hash_linklist_rep.cc \ memtable/hash_linklist_rep.cc \
memtable/hash_skiplist_rep.cc \ memtable/hash_skiplist_rep.cc \
memtable/skiplistrep.cc \
memtable/vectorrep.cc \
port/stack_trace.cc \ port/stack_trace.cc \
port/port_posix.cc \ port/port_posix.cc \
table/adaptive_table_factory.cc \ table/adaptive_table_factory.cc \
@ -82,7 +86,6 @@ LIB_SOURCES = \
table/two_level_iterator.cc \ table/two_level_iterator.cc \
tools/dump/db_dump_tool.cc \ tools/dump/db_dump_tool.cc \
util/arena.cc \ util/arena.cc \
util/auto_roll_logger.cc \
util/bloom.cc \ util/bloom.cc \
util/build_version.cc \ util/build_version.cc \
util/cache.cc \ util/cache.cc \
@ -91,7 +94,6 @@ LIB_SOURCES = \
util/compaction_job_stats_impl.cc \ util/compaction_job_stats_impl.cc \
util/concurrent_arena.cc \ util/concurrent_arena.cc \
util/crc32c.cc \ util/crc32c.cc \
util/db_info_dumper.cc \
util/delete_scheduler_impl.cc \ util/delete_scheduler_impl.cc \
util/dynamic_bloom.cc \ util/dynamic_bloom.cc \
util/env.cc \ util/env.cc \
@ -152,7 +154,6 @@ LIB_SOURCES = \
util/perf_level.cc \ util/perf_level.cc \
util/random.cc \ util/random.cc \
util/rate_limiter.cc \ util/rate_limiter.cc \
util/skiplistrep.cc \
util/slice.cc \ util/slice.cc \
util/statistics.cc \ util/statistics.cc \
util/status.cc \ util/status.cc \
@ -165,7 +166,6 @@ LIB_SOURCES = \
util/thread_status_updater_debug.cc \ util/thread_status_updater_debug.cc \
util/thread_status_util.cc \ util/thread_status_util.cc \
util/thread_status_util_debug.cc \ util/thread_status_util_debug.cc \
util/vectorrep.cc \
util/xfunc.cc \ util/xfunc.cc \
util/xxhash.cc \ util/xxhash.cc \
@ -180,6 +180,7 @@ MOCK_SOURCES = \
TEST_BENCH_SOURCES = \ TEST_BENCH_SOURCES = \
third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc \ third-party/gtest-1.7.0/fused-src/gtest/gtest-all.cc \
db/auto_roll_logger_test.cc \
db/column_family_test.cc \ db/column_family_test.cc \
db/compaction_job_test.cc \ db/compaction_job_test.cc \
db/compaction_job_stats_test.cc \ db/compaction_job_stats_test.cc \
@ -240,7 +241,6 @@ TEST_BENCH_SOURCES = \
tools/reduce_levels_test.cc \ tools/reduce_levels_test.cc \
tools/sst_dump_test.cc \ tools/sst_dump_test.cc \
util/arena_test.cc \ util/arena_test.cc \
util/auto_roll_logger_test.cc \
util/autovector_test.cc \ util/autovector_test.cc \
util/benchharness.cc \ util/benchharness.cc \
util/benchharness_test.cc \ util/benchharness_test.cc \

@ -11,7 +11,6 @@
#include "rocksdb/delete_scheduler.h" #include "rocksdb/delete_scheduler.h"
#include "rocksdb/env.h" #include "rocksdb/env.h"
#include "rocksdb/options.h" #include "rocksdb/options.h"
#include "db/filename.h"
#include "util/file_reader_writer.h" #include "util/file_reader_writer.h"
namespace rocksdb { namespace rocksdb {

@ -4,7 +4,6 @@
#ifndef ROCKSDB_LITE #ifndef ROCKSDB_LITE
#include "db/db_impl.h"
#include "rocksdb/db.h" #include "rocksdb/db.h"
#include "rocksdb/env.h" #include "rocksdb/env.h"
#include "util/testharness.h" #include "util/testharness.h"
@ -183,58 +182,6 @@ TEST_F(MemEnvTest, LargeWrite) {
delete [] scratch; delete [] scratch;
} }
TEST_F(MemEnvTest, DBTest) {
Options options;
options.create_if_missing = true;
options.env = env_;
DB* db;
const Slice keys[] = {Slice("aaa"), Slice("bbb"), Slice("ccc")};
const Slice vals[] = {Slice("foo"), Slice("bar"), Slice("baz")};
ASSERT_OK(DB::Open(options, "/dir/db", &db));
for (size_t i = 0; i < 3; ++i) {
ASSERT_OK(db->Put(WriteOptions(), keys[i], vals[i]));
}
for (size_t i = 0; i < 3; ++i) {
std::string res;
ASSERT_OK(db->Get(ReadOptions(), keys[i], &res));
ASSERT_TRUE(res == vals[i]);
}
Iterator* iterator = db->NewIterator(ReadOptions());
iterator->SeekToFirst();
for (size_t i = 0; i < 3; ++i) {
ASSERT_TRUE(iterator->Valid());
ASSERT_TRUE(keys[i] == iterator->key());
ASSERT_TRUE(vals[i] == iterator->value());
iterator->Next();
}
ASSERT_TRUE(!iterator->Valid());
delete iterator;
DBImpl* dbi = reinterpret_cast<DBImpl*>(db);
ASSERT_OK(dbi->TEST_FlushMemTable());
for (size_t i = 0; i < 3; ++i) {
std::string res;
ASSERT_OK(db->Get(ReadOptions(), keys[i], &res));
ASSERT_TRUE(res == vals[i]);
}
delete db;
options.create_if_missing = false;
ASSERT_OK(DB::Open(options, "/dir/db", &db));
for (size_t i = 0; i < 3; ++i) {
std::string res;
ASSERT_OK(db->Get(ReadOptions(), keys[i], &res));
ASSERT_TRUE(res == vals[i]);
}
delete db;
}
} // namespace rocksdb } // namespace rocksdb
int main(int argc, char** argv) { int main(int argc, char** argv) {

@ -6,7 +6,6 @@
#include <string> #include <string>
#include <vector> #include <vector>
#include "util/mock_env.h" #include "util/mock_env.h"
#include "db/db_impl.h"
#include "rocksdb/db.h" #include "rocksdb/db.h"
#include "rocksdb/env.h" #include "rocksdb/env.h"
#include "util/testharness.h" #include "util/testharness.h"
@ -221,52 +220,6 @@ TEST_F(MockEnvTest, Corrupt) {
ASSERT_NE(result.compare(kCorrupted), 0); ASSERT_NE(result.compare(kCorrupted), 0);
} }
TEST_F(MockEnvTest, DBTest) {
Options options;
options.create_if_missing = true;
options.env = env_;
DB* db;
const Slice keys[] = {Slice("aaa"), Slice("bbb"), Slice("ccc")};
const Slice vals[] = {Slice("foo"), Slice("bar"), Slice("baz")};
ASSERT_OK(DB::Open(options, "/dir/db", &db));
for (size_t i = 0; i < 3; ++i) {
ASSERT_OK(db->Put(WriteOptions(), keys[i], vals[i]));
}
for (size_t i = 0; i < 3; ++i) {
std::string res;
ASSERT_OK(db->Get(ReadOptions(), keys[i], &res));
ASSERT_TRUE(res == vals[i]);
}
Iterator* iterator = db->NewIterator(ReadOptions());
iterator->SeekToFirst();
for (size_t i = 0; i < 3; ++i) {
ASSERT_TRUE(iterator->Valid());
ASSERT_TRUE(keys[i] == iterator->key());
ASSERT_TRUE(vals[i] == iterator->value());
iterator->Next();
}
ASSERT_TRUE(!iterator->Valid());
delete iterator;
// TEST_FlushMemTable() is not supported in ROCKSDB_LITE
#ifndef ROCKSDB_LITE
DBImpl* dbi = reinterpret_cast<DBImpl*>(db);
ASSERT_OK(dbi->TEST_FlushMemTable());
for (size_t i = 0; i < 3; ++i) {
std::string res;
ASSERT_OK(db->Get(ReadOptions(), keys[i], &res));
ASSERT_TRUE(res == vals[i]);
}
#endif // ROCKSDB_LITE
delete db;
}
TEST_F(MockEnvTest, FakeSleeping) { TEST_F(MockEnvTest, FakeSleeping) {
int64_t now = 0; int64_t now = 0;
auto s = env_->GetCurrentTime(&now); auto s = env_->GetCurrentTime(&now);

@ -17,7 +17,6 @@
#include <inttypes.h> #include <inttypes.h>
#include <limits> #include <limits>
#include "db/writebuffer.h"
#include "rocksdb/cache.h" #include "rocksdb/cache.h"
#include "rocksdb/compaction_filter.h" #include "rocksdb/compaction_filter.h"
#include "rocksdb/comparator.h" #include "rocksdb/comparator.h"

@ -13,7 +13,6 @@
#include <string> #include <string>
#include <vector> #include <vector>
#include "db/dbformat.h"
#include "rocksdb/compaction_filter.h" #include "rocksdb/compaction_filter.h"
#include "rocksdb/env.h" #include "rocksdb/env.h"
#include "rocksdb/iterator.h" #include "rocksdb/iterator.h"

@ -13,6 +13,7 @@
#include <algorithm> #include <algorithm>
#include <iostream> #include <iostream>
#include "db/filename.h"
#include "port/port.h" #include "port/port.h"
#include "port/stack_trace.h" #include "port/stack_trace.h"
#include "rocksdb/types.h" #include "rocksdb/types.h"
@ -24,7 +25,6 @@
#include "util/mutexlock.h" #include "util/mutexlock.h"
#include "util/string_util.h" #include "util/string_util.h"
#include "util/testutil.h" #include "util/testutil.h"
#include "util/auto_roll_logger.h"
#include "util/mock_env.h" #include "util/mock_env.h"
#include "utilities/backupable/backupable_db_testutil.h" #include "utilities/backupable/backupable_db_testutil.h"

Loading…
Cancel
Save