• A
    Emit SELECT to slaves in a centralized way. · 5a35e485
    antirez 提交于
    Before this commit every Redis slave had its own selected database ID
    state. This was not actually useful as the emitted stream of commands
    is identical for all the slaves.
    
    Now the the currently selected database is a global state that is set to
    -1 when a new slave is attached, in order to force the SELECT command to
    be re-emitted for all the slaves.
    
    This change is useful in order to implement replication partial
    resynchronization in the future, as makes sure that the stream of
    commands received by slaves, including SELECT commands, are exactly the
    same for every slave connected, at any time.
    
    In this way we could have a global offset that can identify a specific
    piece of the master -> slaves stream of commands.
    5a35e485
replication.c 30.9 KB