Commit 0b305fcf authored by antirez's avatar antirez
Browse files

diskstore FLUSH* fixed

parent c15a3887
...@@ -282,6 +282,8 @@ void dsFlushOneDir(char *path, int dbid) { ...@@ -282,6 +282,8 @@ void dsFlushOneDir(char *path, int dbid) {
redisPanic("Unrecoverable Disk store errore. Existing."); redisPanic("Unrecoverable Disk store errore. Existing.");
} }
while(1) { while(1) {
char buf[1024];
readdir_r(dir,&de,&dp); readdir_r(dir,&de,&dp);
if (dp == NULL) break; if (dp == NULL) break;
if (dp->d_name[0] == '.') continue; if (dp->d_name[0] == '.') continue;
...@@ -298,9 +300,12 @@ void dsFlushOneDir(char *path, int dbid) { ...@@ -298,9 +300,12 @@ void dsFlushOneDir(char *path, int dbid) {
id[len] = '\0'; id[len] = '\0';
if (atoi(id) != dbid) continue; /* skip this file */ if (atoi(id) != dbid) continue; /* skip this file */
} }
if (unlink(dp->d_name) == -1) {
/* Finally unlink the file */
snprintf(buf,1024,"%s/%s",path,dp->d_name);
if (unlink(buf) == -1) {
redisLog(REDIS_WARNING, redisLog(REDIS_WARNING,
"Can't unlink %s: %s", path, strerror(errno)); "Can't unlink %s: %s", buf, strerror(errno));
redisPanic("Unrecoverable Disk store errore. Existing."); redisPanic("Unrecoverable Disk store errore. Existing.");
} }
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment