storage/rocksdb/tools/mysql_ldb.cc (34 lines of code) (raw):

// Copyright (c) 2013, Facebook, Inc. All rights reserved. // This source code is licensed under the BSD-style license found in the // 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. // #include "../rdb_comparator.h" #include "rocksdb/ldb_tool.h" #include "rocksdb/utilities/object_registry.h" int main(int argc, char **argv) { // Register the comparators so they can be loaded from OPTIONS file when // `--try_load_options` is provided. #if ROCKSDB_MAJOR > 6 || (ROCKSDB_MAJOR == 6 && ROCKSDB_MINOR >= 29) rocksdb::ObjectLibrary::Default()->AddFactory( #else rocksdb::ObjectLibrary::Default()->Register( #endif myrocks::Rdb_pk_comparator().Name(), rocksdb::FactoryFunc<rocksdb::Comparator>( [](const std::string & /* uri */, std::unique_ptr<rocksdb::Comparator> * /* res_guard */, std::string * /* err_msg */) { static myrocks::Rdb_pk_comparator cmp; return &cmp; })); #if ROCKSDB_MAJOR > 6 || (ROCKSDB_MAJOR == 6 && ROCKSDB_MINOR >= 29) rocksdb::ObjectLibrary::Default()->AddFactory( #else rocksdb::ObjectLibrary::Default()->Register( #endif myrocks::Rdb_rev_comparator().Name(), rocksdb::FactoryFunc<rocksdb::Comparator>( [](const std::string & /* uri */, std::unique_ptr<rocksdb::Comparator> * /* res_guard */, std::string * /* err_msg */) { static myrocks::Rdb_rev_comparator cmp; return &cmp; })); rocksdb::LDBTool tool; tool.Run(argc, argv); return 0; }