加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 关于可序列化事务的一些查询?

发布时间:2020-12-15 02:28:39 所属栏目:Java 来源:网络整理
导读:我已经读过,提交隔离可以提供比可序列化隔离级别更多的并发性. 我的问题是,Read committed隔离如何提供比序列化更多的并发性?一个简短的场景将是一个很大的帮助 问题: – 在时间t1说两个事务tran1和tran2开始(当我说事务开始时,这里它意味着事务在他们触发
我已经读过,提交隔离可以提供比可序列化隔离级别更多的并发性.

我的问题是,Read committed隔离如何提供比序列化更多的并发性?一个简短的场景将是一个很大的帮助

问题: – 在时间t1说两个事务tran1和tran2开始(当我说事务开始时,这里它意味着事务在他们触发一些查询时开始对吗?).如果tran1在时间t2更新row1并且稍后在时间t3更新tran2获取相同的行,它将不会通过tran1完成更新的行.Right?我之所以这么说是因为tran1和tran2将是当前t1时出现的数据状态的结果.正确吗?事务在开始时是否会获取完整数据库的快照?

我已经读过,编码可序列化事务需要应用程序开发人员进行额外的工作,以检查“无法序列化访问”错误并撤消并重试事务.不确定开发人员何时会收到“无法序列化访问”错误?在下面的场景中我们会得到同样的错误吗?

假设两个事务tran1和tran2在时间t1开始.如果tran1在时间t2更新row1并提交,则在时间t3更新tran2并更新并提交相同的row1.在这种情况下,它会抛出“无法序列化访问”错误吗?如果是,oracle是否在内部维护版本以防可序列化事务,以便知道用户已更新行?

解决方法

请参阅有关隔离级别和数据并发性的 Oracle文档.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读