public:
// Command-line arguments
static const std::string ARG_ENV_URI;
+ static const std::string ARG_FS_URI;
static const std::string ARG_DB;
static const std::string ARG_PATH;
static const std::string ARG_SECONDARY_PATH;
static const std::string ARG_CREATE_IF_MISSING;
static const std::string ARG_NO_VALUE;
static const std::string ARG_DISABLE_CONSISTENCY_CHECKS;
+ static const std::string ARG_ENABLE_BLOB_FILES;
+ static const std::string ARG_MIN_BLOB_SIZE;
+ static const std::string ARG_BLOB_FILE_SIZE;
+ static const std::string ARG_BLOB_COMPRESSION_TYPE;
+ static const std::string ARG_ENABLE_BLOB_GARBAGE_COLLECTION;
+ static const std::string ARG_BLOB_GARBAGE_COLLECTION_AGE_CUTOFF;
+ static const std::string ARG_BLOB_GARBAGE_COLLECTION_FORCE_THRESHOLD;
+ static const std::string ARG_BLOB_COMPACTION_READAHEAD_SIZE;
+ static const std::string ARG_BLOB_FILE_STARTING_LEVEL;
+ static const std::string ARG_PREPOPULATE_BLOB_CACHE;
+ static const std::string ARG_DECODE_BLOB_INDEX;
+ static const std::string ARG_DUMP_UNCOMPRESSED_BLOBS;
struct ParsedParams {
std::string cmd;
virtual void OverrideBaseOptions();
+ virtual void OverrideBaseCFOptions(ColumnFamilyOptions* cf_opts);
+
virtual void SetDBOptions(Options options) { options_ = options; }
virtual void SetColumnFamilies(
protected:
LDBCommandExecuteResult exec_state_;
std::string env_uri_;
+ std::string fs_uri_;
std::string db_path_;
// If empty, open DB as primary. If non-empty, open the DB as secondary
// with this secondary path. When running against a database opened by
// The value passed to options.force_consistency_checks.
bool force_consistency_checks_;
+ bool enable_blob_files_;
+
+ bool enable_blob_garbage_collection_;
+
bool create_if_missing_;
/**
const std::string& option, int& value,
LDBCommandExecuteResult& exec_state);
+ bool ParseDoubleOption(const std::map<std::string, std::string>& options,
+ const std::string& option, double& value,
+ LDBCommandExecuteResult& exec_state);
+
bool ParseStringOption(const std::map<std::string, std::string>& options,
const std::string& option, std::string* value);
+ bool ParseCompressionTypeOption(
+ const std::map<std::string, std::string>& options,
+ const std::string& option, CompressionType& value,
+ LDBCommandExecuteResult& exec_state);
+
/**
* Returns the value of the specified option as a boolean.
* default_val is used if the option is not found in options.
bool IsValueHex(const std::map<std::string, std::string>& options,
const std::vector<std::string>& flags);
+ bool IsTryLoadOptions(const std::map<std::string, std::string>& options,
+ const std::vector<std::string>& flags);
+
/**
* Converts val to a boolean.
* val must be either true or false (case insensitive).