关于RaftCmdRequest中有多个request的情况

  1. 当有多个request的时候,我们需要保证all or none么?(因为有可能有的key在region内,有的不在)
  2. 是否后面的写要能看到前面的读?
    比方说一个RaftCmdRequest里包了 write(k1,v1) get(k1) snap() write(k2,v2)
    是否get(k1)的返回值需要是v1?还是认为这些request是并发的?(如果后面的要能看到前面的,是不是就得要求这个snap()返回一个奇怪的中间状态:能看到k1,但看不到k2)
  3. request打包成一个entry是不是有特定的规则呢?比方说保证一批都是写,或者都是读?

对于线性一致性来说,这种并发下获取这几种结果都是正确的,如果要确保完全的顺序性应该使用事务