summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/aof.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/aof.c b/src/aof.c
index 56a985e72..9e602ce01 100644
--- a/src/aof.c
+++ b/src/aof.c
@@ -884,6 +884,9 @@ int rewriteAppendOnlyFile(char *filename) {
expiretime = getExpire(db,&key);
+ /* If this key is already expired skip it */
+ if (expiretime != -1 && expiretime < now) continue;
+
/* Save the key and associated value */
if (o->type == REDIS_STRING) {
/* Emit a SET command */
@@ -906,8 +909,6 @@ int rewriteAppendOnlyFile(char *filename) {
/* Save the expire time */
if (expiretime != -1) {
char cmd[]="*3\r\n$9\r\nPEXPIREAT\r\n";
- /* If this key is already expired skip it */
- if (expiretime < now) continue;
if (rioWrite(&aof,cmd,sizeof(cmd)-1) == 0) goto werr;
if (rioWriteBulkObject(&aof,&key) == 0) goto werr;
if (rioWriteBulkLongLong(&aof,expiretime) == 0) goto werr;