Exemplo n.º 1
0
 int Ardb::Expire(Context& ctx, RedisCommandFrame& cmd)
 {
     uint64 v = 0;
     if (!check_uint64_arg(ctx.reply, cmd.GetArguments()[1], v))
     {
         return 0;
     }
     int err = GenericExpire(ctx, cmd.GetArguments()[0], v * 1000 + get_current_epoch_millis());
     fill_int_reply(ctx.reply, err == 0 ? 1 : 0);
     return 0;
 }
Exemplo n.º 2
0
Arquivo: keys.cpp Projeto: boreys/ardb
 int Ardb::PExpireat(Context& ctx, RedisCommandFrame& cmd)
 {
     uint64 v = 0;
     if (!check_uint64_arg(ctx.reply, cmd.GetArguments()[1], v))
     {
         return 0;
     }
     int err = GenericExpire(ctx, cmd.GetArguments()[0], v);
     fill_int_reply(ctx.reply, err == 0 ? 1 : 0);
     return 0;
 }
Exemplo n.º 3
0
 int Comms::Expireat(Context& ctx, RedisCommandFrame& cmd)
 {
     uint64 v = 0;
     if (!check_uint64_arg(ctx.reply, cmd.GetArguments()[1], v))
     {
         return 0;
     }
     int err = m_kv_store->PExpireat(ctx.currentDB, cmd.GetArguments()[0], v * 1000);
     if (err >= 0)
     {
         if (err > 0)
         {
             FireKeyChangedEvent(ctx, cmd.GetArguments()[0]);
         }
         fill_int_reply(ctx.reply, err);
     }
     else
     {
         FillErrorReply(ctx, err);
     }
     return 0;
 }