@ -4,12 +4,15 @@
// of patent rights can be found in the PATENTS file in the same directory.
//
# pragma once
# include <stdio.h>
# include <stdlib.h>
# include <string>
# include <iostream>
# include <sstream>
# include <stdlib.h>
# include <algorithm>
# include <stdio.h>
# include <map>
# include <vector>
# include <utility>
# include "db/version_set.h"
# include "rocksdb/env.h"
@ -23,39 +26,34 @@
# include "util/string_util.h"
# include "utilities/ttl/db_ttl_impl.h"
using std : : string ;
using std : : map ;
using std : : vector ;
using std : : ostringstream ;
namespace rocksdb {
class LDBCommand {
public :
// Command-line arguments
static const string ARG_DB ;
static const string ARG_HEX ;
static const string ARG_KEY_HEX ;
static const string ARG_VALUE_HEX ;
static const string ARG_TTL ;
static const string ARG_TTL_START ;
static const string ARG_TTL_END ;
static const string ARG_TIMESTAMP ;
static const string ARG_FROM ;
static const string ARG_TO ;
static const string ARG_MAX_KEYS ;
static const string ARG_BLOOM_BITS ;
static const string ARG_FIX_PREFIX_LEN ;
static const string ARG_COMPRESSION_TYPE ;
static const string ARG_BLOCK_SIZE ;
static const string ARG_AUTO_COMPACTION ;
static const string ARG_WRITE_BUFFER_SIZE ;
static const string ARG_FILE_SIZE ;
static const string ARG_CREATE_IF_MISSING ;
static const std : : st ring ARG_DB ;
static const std : : st ring ARG_HEX ;
static const std : : st ring ARG_KEY_HEX ;
static const std : : st ring ARG_VALUE_HEX ;
static const std : : st ring ARG_TTL ;
static const std : : st ring ARG_TTL_START ;
static const std : : st ring ARG_TTL_END ;
static const std : : st ring ARG_TIMESTAMP ;
static const std : : st ring ARG_FROM ;
static const std : : st ring ARG_TO ;
static const std : : st ring ARG_MAX_KEYS ;
static const std : : st ring ARG_BLOOM_BITS ;
static const std : : st ring ARG_FIX_PREFIX_LEN ;
static const std : : st ring ARG_COMPRESSION_TYPE ;
static const std : : st ring ARG_BLOCK_SIZE ;
static const std : : st ring ARG_AUTO_COMPACTION ;
static const std : : st ring ARG_WRITE_BUFFER_SIZE ;
static const std : : st ring ARG_FILE_SIZE ;
static const std : : st ring ARG_CREATE_IF_MISSING ;
static LDBCommand * InitFromCmdLineArgs (
const vector < string > & args ,
const std : : vector < std : : string > & args ,
const Options & options ,
const LDBOptions & ldb_options
) ;
@ -123,8 +121,8 @@ public:
exec_state_ . Reset ( ) ;
}
static string HexToString ( const string & str ) {
string parsed ;
static std : : st ring HexToString ( const std : : string & str ) {
std : : st ring parsed ;
if ( str [ 0 ] ! = ' 0 ' | | str [ 1 ] ! = ' x ' ) {
fprintf ( stderr , " Invalid hex input %s. Must start with 0x \n " ,
str . c_str ( ) ) ;
@ -140,8 +138,8 @@ public:
return parsed ;
}
static string StringToHex ( const string & str ) {
string result = " 0x " ;
static std : : st ring StringToHex ( const std : : string & str ) {
std : : st ring result = " 0x " ;
char buf [ 10 ] ;
for ( size_t i = 0 ; i < str . length ( ) ; i + + ) {
snprintf ( buf , 10 , " %02X " , ( unsigned char ) str [ i ] ) ;
@ -155,7 +153,7 @@ public:
protected :
LDBCommandExecuteResult exec_state_ ;
string db_path_ ;
std : : st ring db_path_ ;
DB * db_ ;
DBWithTTL * db_ttl_ ;
@ -180,21 +178,24 @@ protected:
/**
* Map of options passed on the command - line .
*/
const map < string , string > option_map_ ;
const std : : map < std : : st ring , std : : string > option_map_ ;
/**
* Flags passed on the command - line .
*/
const vector < string > flags_ ;
const std : : vector < std : : string > flags_ ;
/** List of command-line options valid for this command */
const vector < string > valid_cmd_line_options_ ;
const std : : vector < std : : string > valid_cmd_line_options_ ;
bool ParseKeyValue ( const string & line , string * key , string * value ,
bool ParseKeyValue ( const std : : string & line ,
std : : string * key , std : : string * value ,
bool is_key_hex , bool is_value_hex ) ;
LDBCommand ( const map < string , string > & options , const vector < string > & flags ,
bool is_read_only , const vector < string > & valid_cmd_line_options ) :
LDBCommand ( const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ,
bool is_read_only ,
const std : : vector < std : : string > & valid_cmd_line_options ) :
db_ ( nullptr ) ,
is_read_only_ ( is_read_only ) ,
is_key_hex_ ( false ) ,
@ -205,7 +206,7 @@ protected:
flags_ ( flags ) ,
valid_cmd_line_options_ ( valid_cmd_line_options ) {
map < string , string > : : const_iterator itr = options . find ( ARG_DB ) ;
auto itr = options . find ( ARG_DB ) ;
if ( itr ! = options . end ( ) ) {
db_path_ = itr - > second ;
}
@ -236,7 +237,7 @@ protected:
st = DB : : Open ( opt , db_path_ , & db_ ) ;
}
if ( ! st . ok ( ) ) {
string msg = st . ToString ( ) ;
std : : st ring msg = st . ToString ( ) ;
exec_state_ = LDBCommandExecuteResult : : FAILED ( msg ) ;
}
@ -250,29 +251,33 @@ protected:
}
}
static string PrintKeyValue ( const string & key , const string & value ,
static std : : string PrintKeyValue (
const std : : string & key , const std : : string & value ,
bool is_key_hex , bool is_value_hex ) {
string result ;
std : : st ring result ;
result . append ( is_key_hex ? StringToHex ( key ) : key ) ;
result . append ( DELIM ) ;
result . append ( is_value_hex ? StringToHex ( value ) : value ) ;
return result ;
}
static string PrintKeyValue ( const string & key , const string & value ,
static std : : string PrintKeyValue (
const std : : string & key , const std : : string & value ,
bool is_hex ) {
return PrintKeyValue ( key , value , is_hex , is_hex ) ;
}
/**
* Return true if the specified flag is present in the specified flags vector
* Return true if the specified flag is present in the specified
* flags vector
*/
static bool IsFlagPresent ( const vector < string > & flags , const string & flag ) {
static bool IsFlagPresent (
const std : : vector < std : : string > & flags , const std : : string & flag ) {
return ( std : : find ( flags . begin ( ) , flags . end ( ) , flag ) ! = flags . end ( ) ) ;
}
static string HelpRangeCmdArgs ( ) {
ostringstream str_stream ;
static std : : st ring HelpRangeCmdArgs ( ) {
std : : ostringstream str_stream ;
str_stream < < " " ;
str_stream < < " [-- " < < ARG_FROM < < " ] " ;
str_stream < < " [-- " < < ARG_TO < < " ] " ;
@ -284,8 +289,10 @@ protected:
* used by this command . It includes the common options and the ones
* passed in .
*/
vector < string > BuildCmdLineOptions ( vector < string > options ) {
vector < string > ret = { ARG_DB , ARG_BLOOM_BITS ,
std : : vector < std : : string > BuildCmdLineOptions (
std : : vector < std : : string > options ) {
std : : vector < std : : string > ret = {
ARG_DB , ARG_BLOOM_BITS ,
ARG_BLOCK_SIZE , ARG_AUTO_COMPACTION ,
ARG_COMPRESSION_TYPE , ARG_WRITE_BUFFER_SIZE ,
ARG_FILE_SIZE , ARG_FIX_PREFIX_LEN } ;
@ -293,11 +300,12 @@ protected:
return ret ;
}
bool ParseIntOption ( const map < string , string > & options , const string & option ,
int & value , LDBCommandExecuteResult & exec_state ) ;
bool ParseIntOption ( const std : : map < std : : string , std : : string > & options ,
const std : : string & option ,
int * value , LDBCommandExecuteResult * exec_state ) ;
bool ParseStringOption ( const map < string , string > & options ,
const string & option , string * value ) ;
bool ParseStringOption ( const std : : map < std : : st ring , std : : string > & options ,
const std : : st ring & option , std : : string * value ) ;
Options options_ ;
LDBOptions ldb_options_ ;
@ -308,8 +316,8 @@ private:
* Interpret command line options and flags to determine if the key
* should be input / output in hex .
*/
bool IsKeyHex ( const map < string , string > & options ,
const vector < string > & flags ) {
bool IsKeyHex ( const std : : map < std : : st ring , std : : string > & options ,
const std : : vector < std : : string > & flags ) {
return ( IsFlagPresent ( flags , ARG_HEX ) | |
IsFlagPresent ( flags , ARG_KEY_HEX ) | |
ParseBooleanOption ( options , ARG_HEX , false ) | |
@ -320,8 +328,8 @@ private:
* Interpret command line options and flags to determine if the value
* should be input / output in hex .
*/
bool IsValueHex ( const map < string , string > & options ,
const vector < string > & flags ) {
bool IsValueHex ( const std : : map < std : : st ring , std : : string > & options ,
const std : : vector < std : : string > & flags ) {
return ( IsFlagPresent ( flags , ARG_HEX ) | |
IsFlagPresent ( flags , ARG_VALUE_HEX ) | |
ParseBooleanOption ( options , ARG_HEX , false ) | |
@ -334,12 +342,13 @@ private:
* Throws an exception if the value of the option is not
* " true " or " false " ( case insensitive ) .
*/
bool ParseBooleanOption ( const map < string , string > & options ,
const string & option , bool default_val ) {
bool ParseBooleanOption (
const std : : map < std : : string , std : : string > & options ,
const std : : string & option , bool default_val ) {
map < string , string > : : const_iterator itr = options . find ( option ) ;
auto itr = options . find ( option ) ;
if ( itr ! = options . end ( ) ) {
string option_val = itr - > second ;
std : : st ring option_val = itr - > second ;
return StringToBool ( itr - > second ) ;
}
return default_val ;
@ -350,7 +359,7 @@ private:
* val must be either true or false ( case insensitive ) .
* Otherwise an exception is thrown .
*/
bool StringToBool ( string val ) {
bool StringToBool ( std : : st ring val ) {
std : : transform ( val . begin ( ) , val . end ( ) , val . begin ( ) , : : tolower ) ;
if ( val = = " true " ) {
return true ;
@ -362,101 +371,102 @@ private:
}
static LDBCommand * SelectCommand (
const string & cmd ,
const vector < string > & cmdParams ,
const map < string , string > & option_map ,
const vector < string > & flags
const std : : st ring & cmd ,
const std : : vector < std : : string > & cmdParams ,
const std : : map < std : : st ring , std : : string > & option_map ,
const std : : vector < std : : string > & flags
) ;
} ;
class CompactorCommand : public LDBCommand {
public :
static string Name ( ) { return " compact " ; }
static std : : st ring Name ( ) { return " compact " ; }
CompactorCommand ( const vector < string > & params ,
const map < string , string > & options , const vector < string > & flags ) ;
CompactorCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
virtual void DoCommand ( ) ;
private :
bool null_from_ ;
string from_ ;
std : : st ring from_ ;
bool null_to_ ;
string to_ ;
std : : st ring to_ ;
} ;
class DBDumperCommand : public LDBCommand {
public :
static string Name ( ) { return " dump " ; }
static std : : st ring Name ( ) { return " dump " ; }
DBDumperCommand ( const vector < string > & params ,
const map < string , string > & options , const vector < string > & flags ) ;
DBDumperCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
virtual void DoCommand ( ) ;
private :
bool null_from_ ;
string from_ ;
std : : st ring from_ ;
bool null_to_ ;
string to_ ;
int max_keys_ ;
string delim_ ;
std : : st ring to_ ;
u int64_ t max_keys_ ;
std : : st ring delim_ ;
bool count_only_ ;
bool count_delim_ ;
bool print_stats_ ;
static const string ARG_COUNT_ONLY ;
static const string ARG_COUNT_DELIM ;
static const string ARG_STATS ;
static const string ARG_TTL_BUCKET ;
static const std : : st ring ARG_COUNT_ONLY ;
static const std : : st ring ARG_COUNT_DELIM ;
static const std : : st ring ARG_STATS ;
static const std : : st ring ARG_TTL_BUCKET ;
} ;
class InternalDumpCommand : public LDBCommand {
public :
static string Name ( ) { return " idump " ; }
static std : : st ring Name ( ) { return " idump " ; }
InternalDumpCommand ( const vector < string > & params ,
const map < string , string > & options ,
const vector < string > & flags ) ;
InternalDumpCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : st ring , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
virtual void DoCommand ( ) ;
private :
bool has_from_ ;
string from_ ;
std : : st ring from_ ;
bool has_to_ ;
string to_ ;
std : : st ring to_ ;
int max_keys_ ;
string delim_ ;
std : : st ring delim_ ;
bool count_only_ ;
bool count_delim_ ;
bool print_stats_ ;
bool is_input_key_hex_ ;
static const string ARG_DELIM ;
static const string ARG_COUNT_ONLY ;
static const string ARG_COUNT_DELIM ;
static const string ARG_STATS ;
static const string ARG_INPUT_KEY_HEX ;
static const std : : st ring ARG_DELIM ;
static const std : : st ring ARG_COUNT_ONLY ;
static const std : : st ring ARG_COUNT_DELIM ;
static const std : : st ring ARG_STATS ;
static const std : : st ring ARG_INPUT_KEY_HEX ;
} ;
class DBLoaderCommand : public LDBCommand {
public :
static string Name ( ) { return " load " ; }
DBLoaderCommand ( string & db_name , vector < string > & args ) ;
static std : : string Name ( ) { return " load " ; }
DBLoaderCommand ( const vector < string > & params ,
const map < string , string > & options , const vector < string > & flags ) ;
DBLoaderCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
virtual void DoCommand ( ) ;
virtual Options PrepareOptionsForOpenDB ( ) ;
@ -467,19 +477,20 @@ private:
bool bulk_load_ ;
bool compact_ ;
static const string ARG_DISABLE_WAL ;
static const string ARG_BULK_LOAD ;
static const string ARG_COMPACT ;
static const std : : st ring ARG_DISABLE_WAL ;
static const std : : st ring ARG_BULK_LOAD ;
static const std : : st ring ARG_COMPACT ;
} ;
class ManifestDumpCommand : public LDBCommand {
public :
static string Name ( ) { return " manifest_dump " ; }
static std : : st ring Name ( ) { return " manifest_dump " ; }
ManifestDumpCommand ( const vector < string > & params ,
const map < string , string > & options , const vector < string > & flags ) ;
ManifestDumpCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
virtual void DoCommand ( ) ;
virtual bool NoDBOpen ( ) {
@ -488,35 +499,37 @@ public:
private :
bool verbose_ ;
string path_ ;
std : : st ring path_ ;
static const string ARG_VERBOSE ;
static const string ARG_PATH ;
static const std : : st ring ARG_VERBOSE ;
static const std : : st ring ARG_PATH ;
} ;
class ListColumnFamiliesCommand : public LDBCommand {
public :
static string Name ( ) { return " list_column_families " ; }
static std : : st ring Name ( ) { return " list_column_families " ; }
ListColumnFamiliesCommand ( const vector < string > & params ,
const map < string , string > & options ,
const vector < string > & flags ) ;
ListColumnFamiliesCommand (
const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
virtual void DoCommand ( ) ;
virtual bool NoDBOpen ( ) { return true ; }
private :
string dbname_ ;
std : : st ring dbname_ ;
} ;
class ReduceDBLevelsCommand : public LDBCommand {
public :
static string Name ( ) { return " reduce_levels " ; }
static std : : st ring Name ( ) { return " reduce_levels " ; }
ReduceDBLevelsCommand ( const vector < string > & params ,
const map < string , string > & options , const vector < string > & flags ) ;
ReduceDBLevelsCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
virtual Options PrepareOptionsForOpenDB ( ) ;
@ -526,9 +539,11 @@ public:
return true ;
}
static void Help ( string & msg ) ;
static void Help ( std : : string * msg ) ;
static vector < string > PrepareArgs ( const string & db_path , int new_levels ,
static std : : vector < std : : string > PrepareArgs (
const std : : string & db_path ,
int new_levels ,
bool print_old_level = false ) ;
private :
@ -536,99 +551,104 @@ private:
int new_levels_ ;
bool print_old_levels_ ;
static const string ARG_NEW_LEVELS ;
static const string ARG_PRINT_OLD_LEVELS ;
static const std : : st ring ARG_NEW_LEVELS ;
static const std : : st ring ARG_PRINT_OLD_LEVELS ;
Status GetOldNumOfLevels ( Options & opt , int * levels ) ;
} ;
class ChangeCompactionStyleCommand : public LDBCommand {
public :
static string Name ( ) { return " change_compaction_style " ; }
static std : : st ring Name ( ) { return " change_compaction_style " ; }
ChangeCompactionStyleCommand ( const vector < string > & params ,
const map < string , string > & options , const vector < string > & flags ) ;
ChangeCompactionStyleCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
virtual Options PrepareOptionsForOpenDB ( ) ;
virtual void DoCommand ( ) ;
static void Help ( string & msg ) ;
static void Help ( std : : string * msg ) ;
private :
int old_compaction_style_ ;
int new_compaction_style_ ;
static const string ARG_OLD_COMPACTION_STYLE ;
static const string ARG_NEW_COMPACTION_STYLE ;
static const std : : st ring ARG_OLD_COMPACTION_STYLE ;
static const std : : st ring ARG_NEW_COMPACTION_STYLE ;
} ;
class WALDumperCommand : public LDBCommand {
public :
static string Name ( ) { return " dump_wal " ; }
static std : : st ring Name ( ) { return " dump_wal " ; }
WALDumperCommand ( const vector < string > & params ,
const map < string , string > & options , const vector < string > & flags ) ;
WALDumperCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
virtual bool NoDBOpen ( ) {
return true ;
}
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
virtual void DoCommand ( ) ;
private :
bool print_header_ ;
string wal_file_ ;
std : : st ring wal_file_ ;
bool print_values_ ;
static const string ARG_WAL_FILE ;
static const string ARG_PRINT_HEADER ;
static const string ARG_PRINT_VALUE ;
static const std : : st ring ARG_WAL_FILE ;
static const std : : st ring ARG_PRINT_HEADER ;
static const std : : st ring ARG_PRINT_VALUE ;
} ;
class GetCommand : public LDBCommand {
public :
static string Name ( ) { return " get " ; }
static std : : st ring Name ( ) { return " get " ; }
GetCommand ( const vector < string > & params , const map < string , string > & options ,
const vector < string > & flags ) ;
GetCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
virtual void DoCommand ( ) ;
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
private :
string key_ ;
std : : st ring key_ ;
} ;
class ApproxSizeCommand : public LDBCommand {
public :
static string Name ( ) { return " approxsize " ; }
static std : : st ring Name ( ) { return " approxsize " ; }
ApproxSizeCommand ( const vector < string > & params ,
const map < string , string > & options , const vector < string > & flags ) ;
ApproxSizeCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
virtual void DoCommand ( ) ;
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
private :
string start_key_ ;
string end_key_ ;
std : : st ring start_key_ ;
std : : st ring end_key_ ;
} ;
class BatchPutCommand : public LDBCommand {
public :
static string Name ( ) { return " batchput " ; }
static std : : st ring Name ( ) { return " batchput " ; }
BatchPutCommand ( const vector < string > & params ,
const map < string , string > & options , const vector < string > & flags ) ;
BatchPutCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
virtual void DoCommand ( ) ;
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
virtual Options PrepareOptionsForOpenDB ( ) ;
@ -636,23 +656,24 @@ private:
/**
* The key - values to be inserted .
*/
vector < std : : pair < string , string > > key_values_ ;
std : : vector < std : : pair < std : : st ring , std : : string > > key_values_ ;
} ;
class ScanCommand : public LDBCommand {
public :
static string Name ( ) { return " scan " ; }
static std : : st ring Name ( ) { return " scan " ; }
ScanCommand ( const vector < string > & params , const map < string , string > & options ,
const vector < string > & flags ) ;
ScanCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
virtual void DoCommand ( ) ;
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
private :
string start_key_ ;
string end_key_ ;
std : : st ring start_key_ ;
std : : st ring end_key_ ;
bool start_key_specified_ ;
bool end_key_specified_ ;
int max_keys_scanned_ ;
@ -660,35 +681,37 @@ private:
class DeleteCommand : public LDBCommand {
public :
static string Name ( ) { return " delete " ; }
static std : : st ring Name ( ) { return " delete " ; }
DeleteCommand ( const vector < string > & params ,
const map < string , string > & options , const vector < string > & flags ) ;
DeleteCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
virtual void DoCommand ( ) ;
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
private :
string key_ ;
std : : st ring key_ ;
} ;
class PutCommand : public LDBCommand {
public :
static string Name ( ) { return " put " ; }
static std : : st ring Name ( ) { return " put " ; }
PutCommand ( const vector < string > & params , const map < string , string > & options ,
const vector < string > & flags ) ;
PutCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
virtual void DoCommand ( ) ;
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
virtual Options PrepareOptionsForOpenDB ( ) ;
private :
string key_ ;
string value_ ;
std : : st ring key_ ;
std : : st ring value_ ;
} ;
/**
@ -697,12 +720,13 @@ private:
*/
class DBQuerierCommand : public LDBCommand {
public :
static string Name ( ) { return " query " ; }
static std : : st ring Name ( ) { return " query " ; }
DBQuerierCommand ( const vector < string > & params ,
const map < string , string > & options , const vector < string > & flags ) ;
DBQuerierCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
virtual void DoCommand ( ) ;
@ -715,10 +739,11 @@ private:
class CheckConsistencyCommand : public LDBCommand {
public :
static string Name ( ) { return " checkconsistency " ; }
static std : : st ring Name ( ) { return " checkconsistency " ; }
CheckConsistencyCommand ( const vector < string > & params ,
const map < string , string > & options , const vector < string > & flags ) ;
CheckConsistencyCommand ( const std : : vector < std : : string > & params ,
const std : : map < std : : string , std : : string > & options ,
const std : : vector < std : : string > & flags ) ;
virtual void DoCommand ( ) ;
@ -726,7 +751,7 @@ public:
return true ;
}
static void Help ( string & ret ) ;
static void Help ( std : : string * ret ) ;
} ;
} // namespace rocksdb