sds querybuf;
int argc;
robj **argv;
- struct redisCommand *cmd;
+ struct redisCommand *cmd, *lastcmd;
int reqtype;
int multibulklen; /* number of multi bulk arguments left to read */
long bulklen; /* length of bulk argument in multi bulk request */
long long stat_keyspace_misses; /* number of failed lookups of keys */
size_t stat_peak_memory; /* max used memory record */
long long stat_fork_time; /* time needed to perform latets fork() */
+ long long stat_rejected_conn; /* clients rejected because of maxclients */
list *slowlog;
long long slowlog_entry_id;
long long slowlog_log_slower_than;
int lua_timedout; /* True if we reached the time limit for script
execution. */
int lua_kill; /* Kill the script if true. */
+ /* Assert & bug reportign */
+ char *assert_failed;
+ char *assert_file;
+ int assert_line;
+ int bug_report_start; /* True if bug report header already logged. */
};
typedef struct pubsubPattern {
void getClientsMaxBuffers(unsigned long *longest_output_list,
unsigned long *biggest_input_buffer);
sds getClientInfoString(redisClient *client);
+sds getAllClientsInfoString(void);
void rewriteClientCommandVector(redisClient *c, int argc, ...);
void rewriteClientCommandArgument(redisClient *c, int i, robj *newval);
int pubsubPublishMessage(robj *channel, robj *message);
/* Configuration */
-void loadServerConfig(char *filename);
+void loadServerConfig(char *filename, char *options);
void appendServerSaveParams(time_t seconds, int changes);
void resetServerSaveParams();
void _redisAssertWithInfo(redisClient *c, robj *o, char *estr, char *file, int line);
void _redisAssert(char *estr, char *file, int line);
void _redisPanic(char *msg, char *file, int line);
+void bugReportStart(void);
#endif