脏读问题解决
本文最后更新于 2023-07-26,文章内容可能已经过时。
问题现象
一个数据有版本号,再删除最新版本后需要将删除后最新的版本号返回,此时出现返回了被删除的版本号
例:有版本号1.0.0和1.0.1,最新版本是1.0.1,这时执行了删除功能,按道理来说1.0.1会被删除然后最新版本返回1.0.0但是实际情况是确实删除了1.0.1但是返回的也是1.0.1
问题排查
发现代码里面有如下代码
versionRepository.update();
versionRepository.getLast();
上面的代码将1.0.1逻辑删除
下面的代码获取最新的版本
执行未报错并且是概率出现的问题,推测出是脏读现象
问题解决
将下面那行代码放入方法中再调用以保证前面的执行完才执行后面的
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 周日
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果