Commit 1d426bf5 authored by antirez's avatar antirez
Browse files

Optimize inner loop of activeExpireCycle() for no-expires case.

parent da2dd899
...@@ -644,9 +644,13 @@ void activeExpireCycle(void) { ...@@ -644,9 +644,13 @@ void activeExpireCycle(void) {
/* Continue to expire if at the end of the cycle more than 25% /* Continue to expire if at the end of the cycle more than 25%
* of the keys were expired. */ * of the keys were expired. */
do { do {
unsigned long num = dictSize(db->expires); unsigned long num, slots;
unsigned long slots = dictSlots(db->expires); long long now;
long long now = mstime();
/* If there is nothing to expire try next DB ASAP. */
if ((num = dictSize(db->expires)) == 0) break;
slots = dictSlots(db->expires);
now = mstime();
/* When there are less than 1% filled slots getting random /* When there are less than 1% filled slots getting random
* keys is expensive, so stop here waiting for better times... * keys is expensive, so stop here waiting for better times...
......
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