public:
Uint64ComparatorImpl() {}
- virtual const char* Name() const override {
- return "rocksdb.Uint64Comparator";
- }
+ const char* Name() const override { return "rocksdb.Uint64Comparator"; }
- virtual int Compare(const Slice& a, const Slice& b) const override {
+ int Compare(const Slice& a, const Slice& b) const override {
assert(a.size() == sizeof(uint64_t) && b.size() == sizeof(uint64_t));
const uint64_t* left = reinterpret_cast<const uint64_t*>(a.data());
const uint64_t* right = reinterpret_cast<const uint64_t*>(b.data());
}
}
- virtual void FindShortestSeparator(std::string* /*start*/,
- const Slice& /*limit*/) const override {
+ void FindShortestSeparator(std::string* /*start*/,
+ const Slice& /*limit*/) const override {
return;
}
- virtual void FindShortSuccessor(std::string* /*key*/) const override {
- return;
- }
+ void FindShortSuccessor(std::string* /*key*/) const override { return; }
};
} // namespace
WritableFileWriter* GetWritableFileWriter(WritableFile* wf,
const std::string& fname) {
- unique_ptr<WritableFile> file(wf);
+ std::unique_ptr<WritableFile> file(wf);
return new WritableFileWriter(std::move(file), fname, EnvOptions());
}
RandomAccessFileReader* GetRandomAccessFileReader(RandomAccessFile* raf) {
- unique_ptr<RandomAccessFile> file(raf);
+ std::unique_ptr<RandomAccessFile> file(raf);
return new RandomAccessFileReader(std::move(file),
"[test RandomAccessFileReader]");
}
SequentialFileReader* GetSequentialFileReader(SequentialFile* se,
const std::string& fname) {
- unique_ptr<SequentialFile> file(se);
+ std::unique_ptr<SequentialFile> file(se);
return new SequentialFileReader(std::move(file), fname);
}
cf_opt->purge_redundant_kvs_while_flush = rnd->Uniform(2);
cf_opt->force_consistency_checks = rnd->Uniform(2);
cf_opt->compaction_options_fifo.allow_compaction = rnd->Uniform(2);
+ cf_opt->memtable_whole_key_filtering = rnd->Uniform(2);
// double options
cf_opt->hard_rate_limit = static_cast<double>(rnd->Uniform(10000)) / 13;
cf_opt->target_file_size_base * rnd->Uniform(100);
cf_opt->compaction_options_fifo.max_table_files_size =
uint_max + rnd->Uniform(10000);
- cf_opt->compaction_options_fifo.ttl = uint_max + rnd->Uniform(10000);
// unsigned int options
cf_opt->rate_limit_delay_max_milliseconds = rnd->Uniform(10000);
return s;
}
+bool IsDirectIOSupported(Env* env, const std::string& dir) {
+ EnvOptions env_options;
+ env_options.use_mmap_writes = false;
+ env_options.use_direct_writes = true;
+ std::string tmp = TempFileName(dir, 999);
+ Status s;
+ {
+ std::unique_ptr<WritableFile> file;
+ s = env->NewWritableFile(tmp, &file, env_options);
+ }
+ if (s.ok()) {
+ s = env->DeleteFile(tmp);
+ }
+ return s.ok();
+}
+
} // namespace test
} // namespace rocksdb