开个脑洞,RC的事务隔离级别下,能手动控制ReadView的重建或沿用吗?

如题。最近了解到好像使用RC级别潮流逐渐兴起,因为它没有间隙锁一类的开销。
但是RC对比RR最大的弊端是数据一致性难以保证。
最简单的例子就是事务1在读转账记录之后,读余额数据之前,事务2进行了一次转账操作并提交,会导致事务1中所见的记录数据与余额数据丧失一致性。机制上的原理是RC级别每次查询都会自动生成一个新ReadView来用,而RR能保持一致性的原因是每次都用最初生成的那个ReadView。
那么胡思乱想一下,能不能在RC级别下也手动控制ReadView的重建和沿用?比如在这个需要转账记录表和余额表强行一致的情形下,就手动控制余额的查询继续沿用查询余额时的ReadView,不知道有没有这样的做法,或者是mysql中是不是也有其他方法达成这样的目的?

这就要找人家的官方文档或者源码了,是否预留口子让你能影响readview的生成,但是就算是有,也不太好用,undolog,redolog这些东西是引擎层面的功能,binlog才是server层面,readview是不是也是引擎层面的功能?如果是,切换引擎,是不是还能支持这就不知道了

你的想法似乎很有意思,可以试试看。