mirror of
https://github.com/fluencelabs/redis
synced 2025-03-30 22:31:03 +00:00
FLUSHALL/FLUSHDB no longer sync on disk. Just increment the dirty counter by the number of elements removed, that will probably trigger a background saving operation
This commit is contained in:
parent
975a5b6f98
commit
ca37e9cde8
12
redis.c
12
redis.c
@ -875,13 +875,16 @@ static void initServer() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Empty the whole database */
|
/* Empty the whole database */
|
||||||
static void emptyDb() {
|
static long long emptyDb() {
|
||||||
int j;
|
int j;
|
||||||
|
long long removed = 0;
|
||||||
|
|
||||||
for (j = 0; j < server.dbnum; j++) {
|
for (j = 0; j < server.dbnum; j++) {
|
||||||
|
removed += dictSize(server.db[j].dict);
|
||||||
dictEmpty(server.db[j].dict);
|
dictEmpty(server.db[j].dict);
|
||||||
dictEmpty(server.db[j].expires);
|
dictEmpty(server.db[j].expires);
|
||||||
}
|
}
|
||||||
|
return removed;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* I agree, this is a very rudimental way to load a configuration...
|
/* I agree, this is a very rudimental way to load a configuration...
|
||||||
@ -3038,18 +3041,17 @@ static void sunionstoreCommand(redisClient *c) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void flushdbCommand(redisClient *c) {
|
static void flushdbCommand(redisClient *c) {
|
||||||
|
server.dirty += dictSize(c->db->dict);
|
||||||
dictEmpty(c->db->dict);
|
dictEmpty(c->db->dict);
|
||||||
dictEmpty(c->db->expires);
|
dictEmpty(c->db->expires);
|
||||||
server.dirty++;
|
|
||||||
addReply(c,shared.ok);
|
addReply(c,shared.ok);
|
||||||
rdbSave(server.dbfilename);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void flushallCommand(redisClient *c) {
|
static void flushallCommand(redisClient *c) {
|
||||||
emptyDb();
|
server.dirty += emptyDb();
|
||||||
server.dirty++;
|
|
||||||
addReply(c,shared.ok);
|
addReply(c,shared.ok);
|
||||||
rdbSave(server.dbfilename);
|
rdbSave(server.dbfilename);
|
||||||
|
server.dirty++;
|
||||||
}
|
}
|
||||||
|
|
||||||
redisSortOperation *createSortOperation(int type, robj *pattern) {
|
redisSortOperation *createSortOperation(int type, robj *pattern) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user