RocksDB源码-0x11-MVCC

RocksDB源码-0x05-WAL里面有put record的批量处理,当时提出过如果中间过程出现异常,怎么保证原子性的。

1 读隔离

1
2
3
4
5
6
7
8
9
10
// 版本控制
virtual SequenceNumber GetLastPublishedSequence() const {
if (last_seq_same_as_publish_seq_) {
// 不需要做读隔离 就用当前系统最大的seq
return versions_->LastSequence();
} else {
// 要做读隔离 拿当前可见的seq
return versions_->LastPublishedSequence();
}
}

RocksDB源码-0x11-MVCC
https://bannirui.github.io/2026/02/11/RocksDB/RocksDB源码-0x11-MVCC/
作者
dingrui
发布于
2026年2月11日
许可协议