TIDB为什么不学习oracle以redo log写入为事务commit成功的标志

Oracle在提交时,为保证线性一致性,需要修改undo段头事务表(内存中的,不用立即落盘),让事务对其他会话可见,写入redo(必须写入磁盘),保证事务持久性,实例宕机也能恢复。
Tidb在提交时,为了保证线性一致性,需要等待apply完成,这样才能让其他会话看到,同时在这之前,要保证raft 层面commit,写入多个节点,保证单个节点宕机数据不丢失

2 个赞