mirror of
https://github.com/fluencelabs/redis
synced 2025-03-19 09:00:51 +00:00
commit
bae60ede1d
@ -58,7 +58,7 @@ static int getBitOffsetFromArgument(redisClient *c, robj *o, size_t *offset) {
|
||||
/* Count number of bits set in the binary array pointed by 's' and long
|
||||
* 'count' bytes. The implementation of this function is required to
|
||||
* work with a input string length up to 512 MB. */
|
||||
size_t popcount(void *s, long count) {
|
||||
size_t popcount_binary(void *s, long count) {
|
||||
size_t bits = 0;
|
||||
unsigned char *p;
|
||||
uint32_t *p4 = s;
|
||||
@ -407,6 +407,6 @@ void bitcountCommand(redisClient *c) {
|
||||
} else {
|
||||
long bytes = end-start+1;
|
||||
|
||||
addReplyLongLong(c,popcount(p+start,bytes));
|
||||
addReplyLongLong(c,popcount_binary(p+start,bytes));
|
||||
}
|
||||
}
|
||||
|
@ -996,8 +996,8 @@ void configGetCommand(redisClient *c) {
|
||||
int j;
|
||||
|
||||
for (j = 0; j < server.saveparamslen; j++) {
|
||||
buf = sdscatprintf(buf,"%ld %d",
|
||||
server.saveparams[j].seconds,
|
||||
buf = sdscatprintf(buf,"%jd %d",
|
||||
(intmax_t)server.saveparams[j].seconds,
|
||||
server.saveparams[j].changes);
|
||||
if (j != server.saveparamslen-1)
|
||||
buf = sdscatlen(buf," ",1);
|
||||
|
@ -329,8 +329,11 @@ void debugCommand(redisClient *c) {
|
||||
} else if (!strcasecmp(c->argv[1]->ptr,"sleep") && c->argc == 3) {
|
||||
double dtime = strtod(c->argv[2]->ptr,NULL);
|
||||
long long utime = dtime*1000000;
|
||||
struct timespec tv;
|
||||
|
||||
usleep(utime);
|
||||
tv.tv_sec = utime / 1000000;
|
||||
tv.tv_nsec = (utime % 1000000) * 1000;
|
||||
nanosleep(&tv, NULL);
|
||||
addReply(c,shared.ok);
|
||||
} else if (!strcasecmp(c->argv[1]->ptr,"set-active-expire") &&
|
||||
c->argc == 3)
|
||||
|
@ -36,9 +36,13 @@
|
||||
#define _GNU_SOURCE
|
||||
#endif
|
||||
|
||||
#if defined(__linux__) || defined(__OpenBSD__) || defined(__NetBSD__)
|
||||
#if defined(__linux__) || defined(__OpenBSD__)
|
||||
#define _XOPEN_SOURCE 700
|
||||
#else
|
||||
/*
|
||||
* On NetBSD, _XOPEN_SOURCE undefines _NETBSD_SOURCE and
|
||||
* thus hides inet_aton etc.
|
||||
*/
|
||||
#elif !defined(__NetBSD__)
|
||||
#define _XOPEN_SOURCE
|
||||
#endif
|
||||
|
||||
|
44
src/redis.c
44
src/redis.c
@ -2126,8 +2126,8 @@ sds genRedisInfoString(char *section) {
|
||||
"process_id:%ld\r\n"
|
||||
"run_id:%s\r\n"
|
||||
"tcp_port:%d\r\n"
|
||||
"uptime_in_seconds:%ld\r\n"
|
||||
"uptime_in_days:%ld\r\n"
|
||||
"uptime_in_seconds:%jd\r\n"
|
||||
"uptime_in_days:%jd\r\n"
|
||||
"hz:%d\r\n"
|
||||
"lru_clock:%ld\r\n"
|
||||
"config_file:%s\r\n",
|
||||
@ -2147,8 +2147,8 @@ sds genRedisInfoString(char *section) {
|
||||
(long) getpid(),
|
||||
server.runid,
|
||||
server.port,
|
||||
uptime,
|
||||
uptime/(3600*24),
|
||||
(intmax_t)uptime,
|
||||
(intmax_t)(uptime/(3600*24)),
|
||||
server.hz,
|
||||
(unsigned long) server.lruclock,
|
||||
server.configfile ? server.configfile : "");
|
||||
@ -2205,30 +2205,30 @@ sds genRedisInfoString(char *section) {
|
||||
"loading:%d\r\n"
|
||||
"rdb_changes_since_last_save:%lld\r\n"
|
||||
"rdb_bgsave_in_progress:%d\r\n"
|
||||
"rdb_last_save_time:%ld\r\n"
|
||||
"rdb_last_save_time:%jd\r\n"
|
||||
"rdb_last_bgsave_status:%s\r\n"
|
||||
"rdb_last_bgsave_time_sec:%ld\r\n"
|
||||
"rdb_current_bgsave_time_sec:%ld\r\n"
|
||||
"rdb_last_bgsave_time_sec:%jd\r\n"
|
||||
"rdb_current_bgsave_time_sec:%jd\r\n"
|
||||
"aof_enabled:%d\r\n"
|
||||
"aof_rewrite_in_progress:%d\r\n"
|
||||
"aof_rewrite_scheduled:%d\r\n"
|
||||
"aof_last_rewrite_time_sec:%ld\r\n"
|
||||
"aof_current_rewrite_time_sec:%ld\r\n"
|
||||
"aof_last_rewrite_time_sec:%jd\r\n"
|
||||
"aof_current_rewrite_time_sec:%jd\r\n"
|
||||
"aof_last_bgrewrite_status:%s\r\n",
|
||||
server.loading,
|
||||
server.dirty,
|
||||
server.rdb_child_pid != -1,
|
||||
server.lastsave,
|
||||
(intmax_t)server.lastsave,
|
||||
(server.lastbgsave_status == REDIS_OK) ? "ok" : "err",
|
||||
server.rdb_save_time_last,
|
||||
(server.rdb_child_pid == -1) ?
|
||||
-1 : time(NULL)-server.rdb_save_time_start,
|
||||
(intmax_t)server.rdb_save_time_last,
|
||||
(intmax_t)((server.rdb_child_pid == -1) ?
|
||||
-1 : time(NULL)-server.rdb_save_time_start),
|
||||
server.aof_state != REDIS_AOF_OFF,
|
||||
server.aof_child_pid != -1,
|
||||
server.aof_rewrite_scheduled,
|
||||
server.aof_rewrite_time_last,
|
||||
(server.aof_child_pid == -1) ?
|
||||
-1 : time(NULL)-server.aof_rewrite_time_start,
|
||||
(intmax_t)server.aof_rewrite_time_last,
|
||||
(intmax_t)((server.aof_child_pid == -1) ?
|
||||
-1 : time(NULL)-server.aof_rewrite_time_start),
|
||||
(server.aof_lastbgrewrite_status == REDIS_OK) ? "ok" : "err");
|
||||
|
||||
if (server.aof_state != REDIS_AOF_OFF) {
|
||||
@ -2267,16 +2267,16 @@ sds genRedisInfoString(char *section) {
|
||||
}
|
||||
|
||||
info = sdscatprintf(info,
|
||||
"loading_start_time:%ld\r\n"
|
||||
"loading_start_time:%jd\r\n"
|
||||
"loading_total_bytes:%llu\r\n"
|
||||
"loading_loaded_bytes:%llu\r\n"
|
||||
"loading_loaded_perc:%.2f\r\n"
|
||||
"loading_eta_seconds:%ld\r\n"
|
||||
,(unsigned long) server.loading_start_time,
|
||||
"loading_eta_seconds:%jd\r\n",
|
||||
(intmax_t) server.loading_start_time,
|
||||
(unsigned long long) server.loading_total_bytes,
|
||||
(unsigned long long) server.loading_loaded_bytes,
|
||||
perc,
|
||||
eta
|
||||
(intmax_t)eta
|
||||
);
|
||||
}
|
||||
}
|
||||
@ -2355,8 +2355,8 @@ sds genRedisInfoString(char *section) {
|
||||
|
||||
if (server.repl_state != REDIS_REPL_CONNECTED) {
|
||||
info = sdscatprintf(info,
|
||||
"master_link_down_since_seconds:%ld\r\n",
|
||||
(long)server.unixtime-server.repl_down_since);
|
||||
"master_link_down_since_seconds:%jd\r\n",
|
||||
(intmax_t)server.unixtime-server.repl_down_since);
|
||||
}
|
||||
info = sdscatprintf(info,
|
||||
"slave_priority:%d\r\n"
|
||||
|
@ -1029,7 +1029,7 @@ long long mstime(void);
|
||||
void getRandomHexChars(char *p, unsigned int len);
|
||||
uint64_t crc64(uint64_t crc, const unsigned char *s, uint64_t l);
|
||||
void exitFromChild(int retcode);
|
||||
size_t popcount(void *s, long count);
|
||||
size_t popcount_binary(void *s, long count);
|
||||
void redisSetProcTitle(char *title);
|
||||
|
||||
/* networking.c -- Networking and Client related operations */
|
||||
|
Loading…
x
Reference in New Issue
Block a user