• filipe oliveira's avatar
    Reduce rewriteClientCommandVector usage on EXPIRE command (#11602) · 9ccb8dfd
    filipe oliveira authored
    
    
    There is overhead on Redis 7.0 EXPIRE command that is not present on 6.2.7.
    
    We could see that on the unstable profile there are around 7% of CPU cycles
    spent on rewriteClientCommandVector that are not present on 6.2.7.
    This was introduced in #8474.
    This PR reduces the overhead by using 2X rewriteClientCommandArgument instead of
    rewriteClientCommandVector. In this scenario rewriteClientCommandVector creates 4 arguments.
    the above usage of rewriteClientCommandArgument reduces the overhead in half.
    
    This PR should also improve PEXPIREAT performance by avoiding at all
    rewriteClientCommandArgument usage.
    Co-authored-by: default avatarOran Agra <oran@redislabs.com>
    (cherry picked from commit c3fb48da)
    9ccb8dfd
expire.c 29.8 KB