• Wen Hui's avatar
    Make INFO command variadic (#6891) · 2e1bc942
    Wen Hui authored
    
    
    This is an enhancement for INFO command, previously INFO only support one argument
    for different info section , if user want to get more categories information, either perform
    INFO all / default or calling INFO for multiple times.
    
    **Description of the feature**
    
    The goal of adding this feature is to let the user retrieve multiple categories via the INFO
    command, and still avoid emitting the same section twice.
    
    A use case for this is like Redis Sentinel, which periodically calling INFO command to refresh
    info from monitored Master/Slaves, only Server and Replication part categories are used for
    parsing information. If the INFO command can return just enough categories that client side
    needs, it can save a lot of time for client side parsing it as well as network bandwidth.
    
    **Implementation**
    To share code between redis, sentinel, and other users of INFO (DEBUG and modules),
    we have a new `genInfoSectionDict` function that returns a dict and some boolean flags
    (e.g. `all`) to the caller (built from user input).
    Sentinel is later purging unwanted sections from that, and then it is forwarded to the info `genRedisInfoString`.
    
    **Usage Examples**
    INFO Server Replication   
    INFO CPU Memory
    INFO default commandstats
    Co-authored-by: default avatarOran Agra <oran@redislabs.com>
    2e1bc942
test_helper.tcl 27.5 KB