etcd 将底层 MVCC 的版本信息暴露了出来,在官方的客户端中,丧心病狂的用这些版本信息封装出了一套基于乐观锁的事务框架 stm,还实现了不同的隔离级别。
关键是这个实现只有 300 多行代码,是我们学习数据库事务隔离级别的绝佳入门资料。
详细分析见这里: https://blog.betacat.io/post/2019/08/learn-transaction-isolation-levels-from-etcd/