• antirez's avatar
    RDB AUX fields support. · dee23184
    antirez authored
    This commit introduces a new RDB data type called 'aux'. It is used in
    order to insert inside an RDB file key-value pairs that may serve
    different needs, without breaking backward compatibility when new
    informations are embedded inside an RDB file. The contract between Redis
    versions is to ignore unknown aux fields when encountered.
    
    Aux fields can be used in order to:
    
    1. Augment the RDB file with info like version of Redis that created the
    RDB file, creation time, used memory while the RDB was created, and so
    forth.
    2. Add state about Redis inside the RDB file that we need to reload
    later: replication offset, previos master run ID, in order to improve
    failovers safety and allow partial resynchronization after a slave
    restart.
    3. Anything that we may want to add to RDB files without breaking the
    ability of past versions of Redis to load the file.
    dee23184
rdb.c 60.5 KB