(这是一个非常简单的问题,可以通过尝试来回答,但是由于文档没有明确说明,所以我想在这里记录它)
当我设置一个新的TTL'd couchbase计数器(例如,在python中使用incr()),然后用另一个TTL值重新-incr()计数器时,密钥的TTL是否会重置为新值?在
还有另一个问题:
如果我运行以下代码:
cb.incr(key='mykey',amount=1,initial=1,ttl=10) //10 seconds TTL
cb.incr(key='mykey',amount=1,initial=1,ttl=100) //will this update the TTL?
密钥会在10秒或100秒后过期吗?在
python库文档:http://docs.couchbase.com/sdk-api/couchbase-python-client-1.2.3/api/couchbase.html
所以答案是否定的:对incr()的第二次调用不会更新TTL,但会成功地增加计数器。在
更确切地说,API()不是单独设置的。例如,下面的代码
将生成一个非TTL'd doc-第二次调用set()将删除TTL。在
不,第二个
incr
操作不会更新TTL。如果确实要更改TTL,请使用touch
命令。在注意这与原始memcached协议的行为相匹配-请参见示例How does incr work with expiry times?
相关问题 更多 >
编程相关推荐