美文网首页
openGauss修改#事务并发控制之insert

openGauss修改#事务并发控制之insert

作者: upup果 | 来源:发表于2021-01-13 09:26 被阅读0次

    insert操作在MOT中是非常重要的,在它的论文中,有大篇幅介绍了他关于插入的优化,也就是乐观插入算法,然后通过OCC进行乐观并发控制.在一个事务batch中,若所有事务都不能提交,那么并发插入的操作之间彼此都是不可见的,在进行OCC验证时,所有并发的插入操作都能成功,并不能abort那些重复的插入事务.所以需要考虑新的插入并发控制的方法,首先是要让这些没有提交的插入事务彼此可见,目前想法是维护一个全局的插入map,以sentinel作为key,事务的csn作为value.当插入行的key已经在map中时,判断自己的csn是否更大,如果更大就更新对应的value值.在提交阶段,判断自己的csn和sentinel是否相等,如果不相等,说明自己的被修改了,这个事务也会被废弃(last update win).

    相关文章

      网友评论

          本文标题:openGauss修改#事务并发控制之insert

          本文链接:https://www.haomeiwen.com/subject/xydeaktx.html