redis2.8のttlが複雑怪奇だという話
結論
- Redis 2.8(unstable)はttlの挙動が変わっているので気をつけろ
概要
http://trapezoid.hatenablog.com/entry/2013/02/10/035020
これの続きです。この記事の中で触れた、ttlコマンドの挙動に関してunstableから微妙な変更が加わっていました。どうやら2.8で入るっぽいです
いままで(stable)
これから(unstable)
- ttlが自然数として表現できる場合には自然数を返す
- expireが存在するが、既にexpireすべき時間を迎えており、masterからのキー削除命令を待っているキーの場合には0を返す
- そもそもexpireを設定していない場合は、-1を返す
- そもそも指定したキーがdb上に存在しない場合には-2を返す
という感じで、意味合いが4通りぐらいになります。色々見分けられるようになるのはいいんですけどちょっとこれはどうなんですかね。。。