Warning: these are design notes from initial stages of LogCabin and are are probably not relevant any longer.
Append RPCs should be linearizable: the illusion that each operation takes effect instantaneously at some point between its invocation and response. Unlike ZooKeeper, we don't want a "you got disconnected from the leader, I don't know if your request went through, you're on your own" error, because that's not always easy for applications to deal with.
...