summaryrefslogtreecommitdiff
path: root/src/expire.c
diff options
context:
space:
mode:
authorQu Chen <QuChen88@users.noreply.github.com>2020-10-22 02:57:45 -0700
committerGitHub <noreply@github.com>2020-10-22 12:57:45 +0300
commit556acefe7556443b6d1741d804add92047bf4a8b (patch)
tree9ff6ca7c5bb5896a07dbe623def4d02af31b4298 /src/expire.c
parentc96ece9f5e7b80d65ca4d1a2b801effe68425c90 (diff)
downloadredis-556acefe7556443b6d1741d804add92047bf4a8b.tar.gz
WATCH no longer ignores keys which have expired for MULTI/EXEC. (#7920)
This wrong behavior was backed by a test, and also documentation, and dates back to 2010. But it makes no sense to anyone involved so it was decided to change that. Note that 20eeddf (invalidate watch on expire on access) was released in 6.0 RC2 and 2d1968f released in in 6.0.0 GA (invalidate watch when key is evicted). both of which do similar changes.
Diffstat (limited to 'src/expire.c')
-rw-r--r--src/expire.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/expire.c b/src/expire.c
index 85fd59fe2..cac208573 100644
--- a/src/expire.c
+++ b/src/expire.c
@@ -64,7 +64,7 @@ int activeExpireCycleTryExpire(redisDb *db, dictEntry *de, long long now) {
dbSyncDelete(db,keyobj);
notifyKeyspaceEvent(NOTIFY_EXPIRED,
"expired",keyobj,db->id);
- trackingInvalidateKey(NULL,keyobj);
+ signalModifiedKey(NULL, db, keyobj);
decrRefCount(keyobj);
server.stat_expiredkeys++;
return 1;