提交 fd88489a 编写于 作者: A antirez

TTL command implemented

上级 03fd01c7
2009-05-22 S*STORE now return the cardinality of the resulting set
2009-05-22 rubyredis more compatible with Redis-rb
2009-05-21 minor indentation fix
2009-05-21 timeout support and Redis-rb compatibility aliases implemented in RubyRedis
2009-05-21 RubyRedis info postprocessor rewritten in a more functional way
2009-05-21 dead code removed from RubyRedis
2009-05-21 command postprocessing implemented into RubyRedis
2009-05-20 Automagically reconnection of RubyRedis
2009-05-20 RubyRedis: Array alike operators implemented
2009-05-20 random testing code removed
2009-05-20 RubyRedis DB selection forced at object creation
2009-05-20 Initial version of an alternative Ruby client added
2009-05-20 SDIFF / SDIFFSTORE added to doc
2009-05-20 Aman Gupta changes merged
2009-05-20 Merge git://github.com/tmm1/redis
2009-05-19 Allow timeout=0 config to disable client timeouts
......
......@@ -109,6 +109,7 @@ static struct redisCommand cmdTable[] = {
{"info",1,REDIS_CMD_INLINE},
{"mget",-2,REDIS_CMD_INLINE},
{"expire",3,REDIS_CMD_INLINE},
{"ttl",2,REDIS_CMD_INLINE},
{NULL,0,0}
};
......
......@@ -361,6 +361,7 @@ static void mgetCommand(redisClient *c);
static void monitorCommand(redisClient *c);
static void expireCommand(redisClient *c);
static void getSetCommand(redisClient *c);
static void ttlCommand(redisClient *c);
/*================================= Globals ================================= */
......@@ -422,6 +423,7 @@ static struct redisCommand cmdTable[] = {
{"info",infoCommand,1,REDIS_CMD_INLINE},
{"monitor",monitorCommand,1,REDIS_CMD_INLINE},
{"expire",expireCommand,3,REDIS_CMD_INLINE},
{"ttl",ttlCommand,2,REDIS_CMD_INLINE},
{NULL,NULL,0,0}
};
......@@ -3602,6 +3604,18 @@ static void expireCommand(redisClient *c) {
}
}
static void ttlCommand(redisClient *c) {
time_t expire;
int ttl = -1;
expire = getExpire(c->db,c->argv[1]);
if (expire != -1) {
ttl = (int) (expire-time(NULL));
if (ttl < 0) ttl = -1;
}
addReplySds(c,sdscatprintf(sdsempty(),":%d\r\n",ttl));
}
/* =============================== Replication ============================= */
static int syncWrite(int fd, char *ptr, ssize_t size, int timeout) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册