• 也就是说 tidb 开启悲观锁的事务时,那么更新操作就是最高粒度的隔离:串行执行。而 select 时还是可重复读,除非你加上 for update 才读到最新的提交。

    但是 embedded select 行为不一致,一个事务开启 select for update 后,会加排他行锁,然后 MySQL 其他事务内嵌 select 的时候会锁住,tidb 则不会,这样的话会 tidb 出现幻读,然后插入的时候会出现业务上的数据不一致性。

    这个 embedded select 可否应该设计成和 MySQL 行为一致呢,值得思考😊

  • Beego 再出发 at June 18, 2020

    第一个 Go 网站就是 beego 开发的,真怀念,很感谢谢大😊

  • 有意思,类似于代码生成器?