刷脏页得等到所有表的 redolog 都通过 fsync 落盘了才能进行,如果不这么做直接对某张表刷脏页,若是其他表的 redolog 写失败就会造成数据不一致。

@zhh-4096

在一个事务内更新了多张表,虽然用并行写 redolog 可以加快速度,但是也引入了新的复杂性,有可能在并行写多张表的 redolog 时某张表的 redolog 写失败了但其他写成功,如果断电了,部分写成功的也无法回滚,在启动数据库进入恢复阶段时要通过某种办法来识别哪些 redolog 是无效的。刷脏页也得考虑。 ​​​

Reply to this note

Please Login to reply.

Discussion

No replies yet.