DEFINE_int32(compaction_style, ROCKSDB_NAMESPACE::Options().compaction_style,
"");
+DEFINE_int32(num_levels, ROCKSDB_NAMESPACE::Options().num_levels,
+ "Number of levels in the DB");
+
DEFINE_int32(level0_file_num_compaction_trigger,
ROCKSDB_NAMESPACE::Options().level0_file_num_compaction_trigger,
"Level0 compaction start trigger");
"it again. If N == 0, never drop/create column families. "
"When test_batches_snapshots is true, this flag has no effect");
-DEFINE_int32(get_live_files_and_wal_files_one_in, 1000000,
- "With a chance of 1/N, call GetLiveFiles, GetSortedWalFiles "
- "and GetCurrentWalFile to verify if it returns correctly. If "
- "N == 0, never call the three interfaces.");
+DEFINE_int32(get_live_files_one_in, 1000000,
+ "With a chance of 1/N, call GetLiveFiles to verify if it returns "
+ "correctly. If N == 0, do not call the interface.");
+
+DEFINE_int32(
+ get_sorted_wal_files_one_in, 1000000,
+ "With a chance of 1/N, call GetSortedWalFiles to verify if it returns "
+ "correctly. (Note that this API may legitimately return an error.) If N == "
+ "0, do not call the interface.");
+
+DEFINE_int32(
+ get_current_wal_file_one_in, 1000000,
+ "With a chance of 1/N, call GetCurrentWalFile to verify if it returns "
+ "correctly. (Note that this API may legitimately return an error.) If N == "
+ "0, do not call the interface.");
DEFINE_int32(set_options_one_in, 0,
"With a chance of 1/N, change some random options");
DEFINE_bool(cache_index_and_filter_blocks, false,
"True if indexes/filters should be cached in block cache.");
+DEFINE_int32(
+ top_level_index_pinning,
+ static_cast<int32_t>(ROCKSDB_NAMESPACE::PinningTier::kFallback),
+ "Type of pinning for top-level indexes into metadata partitions (see "
+ "`enum PinningTier` in table.h)");
+
+DEFINE_int32(
+ partition_pinning,
+ static_cast<int32_t>(ROCKSDB_NAMESPACE::PinningTier::kFallback),
+ "Type of pinning for metadata partitions (see `enum PinningTier` in "
+ "table.h)");
+
+DEFINE_int32(
+ unpartitioned_pinning,
+ static_cast<int32_t>(ROCKSDB_NAMESPACE::PinningTier::kFallback),
+ "Type of pinning for unpartitioned metadata blocks (see `enum PinningTier` "
+ "in table.h)");
+
DEFINE_bool(use_clock_cache, false,
"Replace default LRU block cache with clock cache.");
"use block based filter"
"instead of full filter for block based table");
+DEFINE_bool(use_ribbon_filter, false,
+ "Use Ribbon filter instead of Bloom filter");
+
DEFINE_bool(partition_filters, false,
"use partitioned filters "
"for block-based table");
+DEFINE_bool(
+ optimize_filters_for_memory,
+ ROCKSDB_NAMESPACE::BlockBasedTableOptions().optimize_filters_for_memory,
+ "Minimize memory footprint of filters");
+
DEFINE_int32(
index_type,
static_cast<int32_t>(
ROCKSDB_NAMESPACE::Options().use_direct_io_for_flush_and_compaction,
"Use O_DIRECT for writing data");
+DEFINE_bool(mock_direct_io, false,
+ "Mock direct IO by not using O_DIRECT for direct IO read");
+
DEFINE_bool(statistics, false, "Create database statistics");
DEFINE_bool(sync, false, "Sync all writes to disk");
RegisterFlagValidator(&FLAGS_kill_random_test, &ValidateInt32Positive);
extern int rocksdb_kill_odds;
-DEFINE_string(kill_prefix_blacklist, "",
+DEFINE_string(kill_exclude_prefixes, "",
"If non-empty, kill points with prefix in the list given will be"
" skipped. Items are comma-separated.");
-extern std::vector<std::string> rocksdb_kill_prefix_blacklist;
+extern std::vector<std::string> rocksdb_kill_exclude_prefixes;
DEFINE_bool(disable_wal, false, "If true, do not write WAL for write.");
DEFINE_bool(rate_limit_bg_reads, false,
"Use options.rate_limiter on compaction reads");
+DEFINE_uint64(sst_file_manager_bytes_per_sec, 0,
+ "Set `Options::sst_file_manager` to delete at this rate. By "
+ "default the deletion rate is unbounded.");
+
+DEFINE_uint64(sst_file_manager_bytes_per_truncate, 0,
+ "Set `Options::sst_file_manager` to delete in chunks of this "
+ "many bytes. By default whole files will be deleted.");
+
DEFINE_bool(use_txn, false,
"Use TransactionDB. Currently the default write policy is "
"TxnDBWritePolicy::WRITE_PREPARED");
"every N operations on average. 0 indicates CreateNewBackup() "
"is disabled.");
+DEFINE_uint64(backup_max_size, 100 * 1024 * 1024,
+ "If non-zero, skip checking backup/restore when DB size in "
+ "bytes exceeds this setting.");
+
DEFINE_int32(checkpoint_one_in, 0,
"If non-zero, then CreateCheckpoint() will be called once for "
"every N operations on average. 0 indicates CreateCheckpoint() "
"If non-zero, then CompactRange() will be called once for every N "
"operations on average. 0 indicates CompactRange() is disabled.");
+DEFINE_int32(mark_for_compaction_one_file_in, 0,
+ "A `TablePropertiesCollectorFactory` will be registered, which "
+ "creates a `TablePropertiesCollector` with `NeedCompact()` "
+ "returning true once for every N files on average. 0 or negative "
+ "mean `NeedCompact()` always returns false.");
+
DEFINE_int32(flush_one_in, 0,
"If non-zero, then Flush() will be called once for every N ops "
"on average. 0 indicates calls to Flush() are disabled.");
"Maximum size of training data passed to zstd's dictionary "
"trainer.");
+DEFINE_int32(compression_parallel_threads, 1,
+ "Number of threads for parallel compression.");
+
DEFINE_string(bottommost_compression_type, "disable",
"Algorithm to use to compress bottommost level of the database. "
"\"disable\" means disabling the feature");
DEFINE_string(checksum_type, "kCRC32c", "Algorithm to use to checksum blocks");
-DEFINE_string(hdfs, "", "Name of hdfs environment");
+DEFINE_string(hdfs, "",
+ "Name of hdfs environment. Mutually exclusive with"
+ " --env_uri and --fs_uri.");
-DEFINE_string(env_uri, "",
- "URI for env lookup. Mutually exclusive with --hdfs");
+DEFINE_string(
+ env_uri, "",
+ "URI for env lookup. Mutually exclusive with --hdfs and --fs_uri");
+
+DEFINE_string(fs_uri, "",
+ "URI for registry Filesystem lookup. Mutually exclusive"
+ " with --hdfs and --env_uri."
+ " Creates a default environment with the specified filesystem.");
DEFINE_uint64(ops_per_thread, 1200000, "Number of operations per thread.");
static const bool FLAGS_ops_per_thread_dummy __attribute__((__unused__)) =
ROCKSDB_NAMESPACE::Options().write_dbid_to_manifest,
"Write DB_ID to manifest");
+DEFINE_bool(avoid_flush_during_recovery,
+ ROCKSDB_NAMESPACE::Options().avoid_flush_during_recovery,
+ "Avoid flush during recovery");
+
DEFINE_uint64(max_write_batch_group_size_bytes,
ROCKSDB_NAMESPACE::Options().max_write_batch_group_size_bytes,
"Max write batch group size");
DEFINE_int32(approximate_size_one_in, 64,
"If non-zero, DB::GetApproximateSizes() will be called against"
" random key ranges.");
+
+DEFINE_int32(read_fault_one_in, 1000,
+ "On non-zero, enables fault injection on read");
+
+DEFINE_int32(get_property_one_in, 1000,
+ "If non-zero, then DB::GetProperty() will be called to get various"
+ " properties for every N ops on average. 0 indicates that"
+ " GetProperty() will be not be called.");
+
+DEFINE_bool(sync_fault_injection, false,
+ "If true, FaultInjectionTestFS will be used for write operations, "
+ " and unsynced data in DB will lost after crash.");
+
+DEFINE_bool(best_efforts_recovery, false,
+ "If true, use best efforts recovery.");
+DEFINE_bool(skip_verifydb, false, "If true, skip VerifyDb() calls.");
+
+DEFINE_bool(enable_compaction_filter, false,
+ "If true, configures a compaction filter that returns a kRemove "
+ "decision for deleted keys.");
+
+DEFINE_bool(paranoid_file_checks, true,
+ "After writing every SST file, reopen it and read all the keys "
+ "and validate checksums");
+
+DEFINE_string(file_checksum_impl, "none",
+ "Name of an implementation for file_checksum_gen_factory, or "
+ "\"none\" for null.");
+
#endif // GFLAGS