April 2015

MySQL 5.7 BUGFIX BUG#12161

(本文已发布到我们的内核月报中,请点击链接访问更多精彩:http://mysql.taobao.org/monthly/2015/04/这里只是在本博客里做个备份 ) 在MySQL 5.7版本里,大量遗留很多年的bug都被fix掉了,bug#12161就是其中一个,该bug在2005年第一次report到Bug list上,十年之后终于在MySQL 5.7.7 第一个RC版本被fix了。 Bug描述 当我们显式开启一个XA事务,执行操作,并完成XA PREPARE后,如果Kill session或者主动断开,再重连执行XA RECOVER,之前的这个XA事务是丢失了的。 原创文章,转载请注明: 转载自Simple Life 本文链接地址: MySQL 5.7 BUGFIX BUG#12161 Post Footer automatically generated by wp-posturl plugin for wordpress.

[MySQL 5.7.7] 拆分LOCK_grant读写锁

Worklog: https://dev.mysql.com/worklog/task/?id=8355 问题: Lock_grant锁实际上是一个读写锁,每执行一条sql都要读取执行check_grant来检查权限是否匹配,这时候加的是读锁,而读锁是可以并发的。大多数情况下加锁开销是很不明显的,但是在MySQL将大多数只读场景下的锁都消除掉后,LOCK_grant开始变的比较突出了。 5.7里主要消除掉了几种会影响到只读性能的锁: #为InnoDB表消除THR_LOCK #MDL LOCK维护改成LOCK FREE的算法 #为AUTO-COMMIT的SELECT缓存Read View来减少trx_sys->mutex冲突 Stewart Smith report了一个Bug#72829 来描述LOCK_grant在power机型的影响,在他的测试中,LOCK_grant去除掉后,居然有50的性能提升。我相信这是和平台相关的。。。因为我的机器上很难达到这样的提升。。。。 原创文章,转载请注明: 转载自Simple Life 本文链接地址: [MySQL 5.7.7] 拆分LOCK_grant读写锁 Post Footer automatically generated by wp-posturl plugin for wordpress.