Available since: 1.2.0
Time complexity: O(1)
ACL categories:
@keyspace
@write
@fast
EXPIREAT
has the same effect and semantic as EXPIRE
, but instead of
specifying the number of seconds representing the TTL (time to live), it takes
an absolute Unix timestamp (seconds since January 1, 1970). A
timestamp in the past will delete the key immediately.
Please for the specific semantics of the command refer to the documentation of
EXPIRE
.
EXPIREAT
was introduced in order to convert relative timeouts to absolute
timeouts for the AOF persistence mode.
Of course, it can be used directly to specify that a given key should expire at
a given time in the future.
The EXPIREAT
command supports a set of options:
NX
-- Set expiry only when the key has no expiryXX
-- Set expiry only when the key has an existing expiryGT
-- Set expiry only when the new expiry is greater than current oneLT
-- Set expiry only when the new expiry is less than current oneA non-volatile key is treated as an infinite TTL for the purpose of GT
and LT
.
The GT
, LT
and NX
options are mutually exclusive.
Integer reply, specifically:
1
if the timeout was set.0
if the timeout was not set. e.g. key doesn't exist, or operation skipped due to the provided arguments.NX
, XX
, GT
and LT
.