MCPcopy Create free account
hub / github.com/ElementsProject/elements / main

Function main

src/leveldb/benchmarks/db_bench.cc:917–981  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

915} // namespace leveldb
916
917int main(int argc, char** argv) {
918 FLAGS_write_buffer_size = leveldb::Options().write_buffer_size;
919 FLAGS_max_file_size = leveldb::Options().max_file_size;
920 FLAGS_block_size = leveldb::Options().block_size;
921 FLAGS_open_files = leveldb::Options().max_open_files;
922 std::string default_db_path;
923
924 for (int i = 1; i < argc; i++) {
925 double d;
926 int n;
927 char junk;
928 if (leveldb::Slice(argv[i]).starts_with("--benchmarks=")) {
929 FLAGS_benchmarks = argv[i] + strlen("--benchmarks=");
930 } else if (sscanf(argv[i], "--compression_ratio=%lf%c", &d, &junk) == 1) {
931 FLAGS_compression_ratio = d;
932 } else if (sscanf(argv[i], "--histogram=%d%c", &n, &junk) == 1 &&
933 (n == 0 || n == 1)) {
934 FLAGS_histogram = n;
935 } else if (sscanf(argv[i], "--use_existing_db=%d%c", &n, &junk) == 1 &&
936 (n == 0 || n == 1)) {
937 FLAGS_use_existing_db = n;
938 } else if (sscanf(argv[i], "--reuse_logs=%d%c", &n, &junk) == 1 &&
939 (n == 0 || n == 1)) {
940 FLAGS_reuse_logs = n;
941 } else if (sscanf(argv[i], "--num=%d%c", &n, &junk) == 1) {
942 FLAGS_num = n;
943 } else if (sscanf(argv[i], "--reads=%d%c", &n, &junk) == 1) {
944 FLAGS_reads = n;
945 } else if (sscanf(argv[i], "--threads=%d%c", &n, &junk) == 1) {
946 FLAGS_threads = n;
947 } else if (sscanf(argv[i], "--value_size=%d%c", &n, &junk) == 1) {
948 FLAGS_value_size = n;
949 } else if (sscanf(argv[i], "--write_buffer_size=%d%c", &n, &junk) == 1) {
950 FLAGS_write_buffer_size = n;
951 } else if (sscanf(argv[i], "--max_file_size=%d%c", &n, &junk) == 1) {
952 FLAGS_max_file_size = n;
953 } else if (sscanf(argv[i], "--block_size=%d%c", &n, &junk) == 1) {
954 FLAGS_block_size = n;
955 } else if (sscanf(argv[i], "--cache_size=%d%c", &n, &junk) == 1) {
956 FLAGS_cache_size = n;
957 } else if (sscanf(argv[i], "--bloom_bits=%d%c", &n, &junk) == 1) {
958 FLAGS_bloom_bits = n;
959 } else if (sscanf(argv[i], "--open_files=%d%c", &n, &junk) == 1) {
960 FLAGS_open_files = n;
961 } else if (strncmp(argv[i], "--db=", 5) == 0) {
962 FLAGS_db = argv[i] + 5;
963 } else {
964 fprintf(stderr, "Invalid flag '%s'\n", argv[i]);
965 exit(1);
966 }
967 }
968
969 leveldb::g_env = leveldb::Env::Default();
970
971 // Choose a location for the test database if none given with --db=<path>
972 if (FLAGS_db == nullptr) {
973 leveldb::g_env->GetTestDirectory(&default_db_path);
974 default_db_path += "/dbbench";

Callers

nothing calls this directly

Calls 4

OptionsClass · 0.50
SliceClass · 0.50
GetTestDirectoryMethod · 0.45
RunMethod · 0.45

Tested by

no test coverage detected