keyIsExpired checks server.loading before calling getExpire
Seems excessive to call getExpire if we don't need it.
This can maybe have some speedup on AOF file loading (saving a dictFind call)
@@ -1612,14 +1612,14 @@ void propagateDeletion(redisDb *db, robj *key, int lazy) {
/* Check if the key is expired. */
int keyIsExpired(redisDb *db, robj *key) {
+ /* Don't expire anything while loading. It will be done later. */
+ if (server.loading) return 0;
+
mstime_t when = getExpire(db,key);
mstime_t now;
if (when < 0) return 0; /* No expire for this key */
- /* Don't expire anything while loading. It will be done later. */
- if (server.loading) return 0;
-
now = commandTimeSnapshot();
/* The key expired if the current (virtual or real) time is greater
