Delete the specified expired key and propagate expire. */
| 1940 | |
| 1941 | /* Delete the specified expired key and propagate expire. */ |
| 1942 | void deleteExpiredKeyAndPropagate(redisDb *db, robj *keyobj) { |
| 1943 | mstime_t expire_latency; |
| 1944 | latencyStartMonitor(expire_latency); |
| 1945 | if (g_pserver->lazyfree_lazy_expire) { |
| 1946 | dbAsyncDelete(db,keyobj); |
| 1947 | } else { |
| 1948 | dbSyncDelete(db,keyobj); |
| 1949 | } |
| 1950 | latencyEndMonitor(expire_latency); |
| 1951 | latencyAddSampleIfNeeded("expire-del",expire_latency); |
| 1952 | notifyKeyspaceEvent(NOTIFY_EXPIRED,"expired",keyobj,db->id); |
| 1953 | signalModifiedKey(NULL,db,keyobj); |
| 1954 | propagateExpire(db,keyobj,g_pserver->lazyfree_lazy_expire); |
| 1955 | g_pserver->stat_expiredkeys++; |
| 1956 | } |
| 1957 | |
| 1958 | /* Propagate expires into slaves and the AOF file. |
| 1959 | * When a key expires in the master, a DEL operation for this key is sent |
no test coverage detected