Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
redis
Commits
2a6a2ed1
Commit
2a6a2ed1
authored
Mar 23, 2010
by
antirez
Browse files
New INFO field: expired_keys
parent
1763929f
Changes
1
Hide whitespace changes
Inline
Side-by-side
redis.c
View file @
2a6a2ed1
...
@@ -353,6 +353,7 @@ struct redisServer {
...
@@ -353,6 +353,7 @@ struct redisServer {
time_t
stat_starttime
;
/* server start time */
time_t
stat_starttime
;
/* server start time */
long
long
stat_numcommands
;
/* number of processed commands */
long
long
stat_numcommands
;
/* number of processed commands */
long
long
stat_numconnections
;
/* number of connections received */
long
long
stat_numconnections
;
/* number of connections received */
long
long
stat_expiredkeys
;
/* number of expired keys */
/* Configuration */
/* Configuration */
int
verbosity
;
int
verbosity
;
int
glueoutputbuf
;
int
glueoutputbuf
;
...
@@ -1355,6 +1356,7 @@ static int serverCron(struct aeEventLoop *eventLoop, long long id, void *clientD
...
@@ -1355,6 +1356,7 @@ static int serverCron(struct aeEventLoop *eventLoop, long long id, void *clientD
if
(
now
>
t
)
{
if
(
now
>
t
)
{
deleteKey
(
db
,
dictGetEntryKey
(
de
));
deleteKey
(
db
,
dictGetEntryKey
(
de
));
expired
++
;
expired
++
;
server
.
stat_expiredkeys
++
;
}
}
}
}
}
while
(
expired
>
REDIS_EXPIRELOOKUPS_PER_CRON
/
4
);
}
while
(
expired
>
REDIS_EXPIRELOOKUPS_PER_CRON
/
4
);
...
@@ -1574,6 +1576,7 @@ static void initServer() {
...
@@ -1574,6 +1576,7 @@ static void initServer() {
server
.
dirty
=
0
;
server
.
dirty
=
0
;
server
.
stat_numcommands
=
0
;
server
.
stat_numcommands
=
0
;
server
.
stat_numconnections
=
0
;
server
.
stat_numconnections
=
0
;
server
.
stat_expiredkeys
=
0
;
server
.
stat_starttime
=
time
(
NULL
);
server
.
stat_starttime
=
time
(
NULL
);
server
.
unixtime
=
time
(
NULL
);
server
.
unixtime
=
time
(
NULL
);
aeCreateTimeEvent
(
server
.
el
,
1
,
serverCron
,
NULL
,
NULL
);
aeCreateTimeEvent
(
server
.
el
,
1
,
serverCron
,
NULL
,
NULL
);
...
@@ -6533,6 +6536,7 @@ static sds genRedisInfoString(void) {
...
@@ -6533,6 +6536,7 @@ static sds genRedisInfoString(void) {
"bgrewriteaof_in_progress:%d
\r\n
"
"bgrewriteaof_in_progress:%d
\r\n
"
"total_connections_received:%lld
\r\n
"
"total_connections_received:%lld
\r\n
"
"total_commands_processed:%lld
\r\n
"
"total_commands_processed:%lld
\r\n
"
"expired_keys:%lld
\r\n
"
"hash_max_zipmap_entries:%ld
\r\n
"
"hash_max_zipmap_entries:%ld
\r\n
"
"hash_max_zipmap_value:%ld
\r\n
"
"hash_max_zipmap_value:%ld
\r\n
"
"vm_enabled:%d
\r\n
"
"vm_enabled:%d
\r\n
"
...
@@ -6554,6 +6558,7 @@ static sds genRedisInfoString(void) {
...
@@ -6554,6 +6558,7 @@ static sds genRedisInfoString(void) {
server
.
bgrewritechildpid
!=
-
1
,
server
.
bgrewritechildpid
!=
-
1
,
server
.
stat_numconnections
,
server
.
stat_numconnections
,
server
.
stat_numcommands
,
server
.
stat_numcommands
,
server
.
stat_expiredkeys
,
server
.
hash_max_zipmap_entries
,
server
.
hash_max_zipmap_entries
,
server
.
hash_max_zipmap_value
,
server
.
hash_max_zipmap_value
,
server
.
vm_enabled
!=
0
,
server
.
vm_enabled
!=
0
,
...
@@ -6677,6 +6682,7 @@ static int expireIfNeeded(redisDb *db, robj *key) {
...
@@ -6677,6 +6682,7 @@ static int expireIfNeeded(redisDb *db, robj *key) {
/* Delete the key */
/* Delete the key */
dictDelete
(
db
->
expires
,
key
);
dictDelete
(
db
->
expires
,
key
);
server
.
stat_expiredkeys
++
;
return
dictDelete
(
db
->
dict
,
key
)
==
DICT_OK
;
return
dictDelete
(
db
->
dict
,
key
)
==
DICT_OK
;
}
}
...
@@ -6689,6 +6695,7 @@ static int deleteIfVolatile(redisDb *db, robj *key) {
...
@@ -6689,6 +6695,7 @@ static int deleteIfVolatile(redisDb *db, robj *key) {
/* Delete the key */
/* Delete the key */
server
.
dirty
++
;
server
.
dirty
++
;
server
.
stat_expiredkeys
++
;
dictDelete
(
db
->
expires
,
key
);
dictDelete
(
db
->
expires
,
key
);
return
dictDelete
(
db
->
dict
,
key
)
==
DICT_OK
;
return
dictDelete
(
db
->
dict
,
key
)
==
DICT_OK
;
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment