redis-cli: added comments to split program in parts.

This commit is contained in:
antirez 2014-02-25 12:24:45 +01:00
parent 386467acfb
commit dcac007b81

View File

@ -102,14 +102,18 @@ char *redisGitDirty(void);
* Utility functions * Utility functions
*--------------------------------------------------------------------------- */ *--------------------------------------------------------------------------- */
static long long mstime(void) { static long long ustime(void) {
struct timeval tv; struct timeval tv;
long long mst; long long ust;
gettimeofday(&tv, NULL); gettimeofday(&tv, NULL);
mst = ((long long)tv.tv_sec)*1000; ust = ((long long)tv.tv_sec)*1000000;
mst += tv.tv_usec/1000; ust += tv.tv_usec;
return mst; return ust;
}
static long long mstime(void) {
return ustime()/1000;
} }
static void cliRefreshPrompt(void) { static void cliRefreshPrompt(void) {
@ -950,6 +954,10 @@ static int noninteractive(int argc, char **argv) {
return retval; return retval;
} }
/*------------------------------------------------------------------------------
* Eval mode
*--------------------------------------------------------------------------- */
static int evalMode(int argc, char **argv) { static int evalMode(int argc, char **argv) {
sds script = sdsempty(); sds script = sdsempty();
FILE *fp; FILE *fp;
@ -988,6 +996,10 @@ static int evalMode(int argc, char **argv) {
return cliSendCommand(argc+3-got_comma, argv2, config.repeat); return cliSendCommand(argc+3-got_comma, argv2, config.repeat);
} }
/*------------------------------------------------------------------------------
* Latency and latency history modes
*--------------------------------------------------------------------------- */
#define LATENCY_SAMPLE_RATE 10 /* milliseconds. */ #define LATENCY_SAMPLE_RATE 10 /* milliseconds. */
#define LATENCY_HISTORY_DEFAULT_INTERVAL 15000 /* milliseconds. */ #define LATENCY_HISTORY_DEFAULT_INTERVAL 15000 /* milliseconds. */
static void latencyMode(void) { static void latencyMode(void) {
@ -1032,6 +1044,10 @@ static void latencyMode(void) {
} }
} }
/*------------------------------------------------------------------------------
* Slave mode
*--------------------------------------------------------------------------- */
/* Sends SYNC and reads the number of bytes in the payload. Used both by /* Sends SYNC and reads the number of bytes in the payload. Used both by
* slaveMode() and getRDB(). */ * slaveMode() and getRDB(). */
unsigned long long sendSync(int fd) { unsigned long long sendSync(int fd) {
@ -1095,6 +1111,10 @@ static void slaveMode(void) {
config.output = original_output; config.output = original_output;
} }
/*------------------------------------------------------------------------------
* RDB transfer mode
*--------------------------------------------------------------------------- */
/* This function implements --rdb, so it uses the replication protocol in order /* This function implements --rdb, so it uses the replication protocol in order
* to fetch the RDB file from a remote server. */ * to fetch the RDB file from a remote server. */
static void getRDB(void) { static void getRDB(void) {
@ -1140,6 +1160,10 @@ static void getRDB(void) {
exit(0); exit(0);
} }
/*------------------------------------------------------------------------------
* Bulk import (pipe) mode
*--------------------------------------------------------------------------- */
static void pipeMode(void) { static void pipeMode(void) {
int fd = context->fd; int fd = context->fd;
long long errors = 0, replies = 0, obuf_len = 0, obuf_pos = 0; long long errors = 0, replies = 0, obuf_len = 0, obuf_pos = 0;
@ -1291,6 +1315,10 @@ static void pipeMode(void) {
exit(0); exit(0);
} }
/*------------------------------------------------------------------------------
* Find big keys
*--------------------------------------------------------------------------- */
#define TYPE_STRING 0 #define TYPE_STRING 0
#define TYPE_LIST 1 #define TYPE_LIST 1
#define TYPE_SET 2 #define TYPE_SET 2
@ -1377,6 +1405,10 @@ static void findBigKeys(void) {
} }
} }
/*------------------------------------------------------------------------------
* Stats mode
*--------------------------------------------------------------------------- */
/* Return the specified INFO field from the INFO command output "info". /* Return the specified INFO field from the INFO command output "info".
* A new buffer is allocated for the result, that needs to be free'd. * A new buffer is allocated for the result, that needs to be free'd.
* If the field is not found NULL is returned. */ * If the field is not found NULL is returned. */
@ -1516,6 +1548,10 @@ static void statMode() {
} }
} }
/*------------------------------------------------------------------------------
* Scan mode
*--------------------------------------------------------------------------- */
static void scanMode() { static void scanMode() {
redisReply *reply; redisReply *reply;
unsigned long long cur = 0; unsigned long long cur = 0;