Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

第七章節:關於 快照隔離 MVCC 的版本問題 -Mason #79

Open
0x171-0 opened this issue Jul 25, 2022 · 2 comments
Open

第七章節:關於 快照隔離 MVCC 的版本問題 -Mason #79

0x171-0 opened this issue Jul 25, 2022 · 2 comments
Labels
question Further information is requested

Comments

@0x171-0
Copy link

0x171-0 commented Jul 25, 2022

读已提交 的隔离级别,而不提供 快照隔离,那么保留一个对象的两个版本就足够了:提交的版本和被覆盖但尚未提交的版本。支持快照隔离的存储引擎通常也使用 MVCC 来实现 读已提交 隔离级别。一种典型的方法是 读已提交 为每个查询使用单独的快照,而 快照隔离 对整个事务使用相同的快照。

快照隔離使用一致性快照+事務 ID 機制達到多版本控制,所以每一個操作都是一個版本的意思嗎?

🥲 抱歉還沒空找解答,有空會補上

@0x171-0 0x171-0 changed the title 第七章:關於 快照隔離 MVCC 的版本問題 -Mason 第七章節:關於 快照隔離 MVCC 的版本問題 -Mason Jul 25, 2022
@kylemocode kylemocode added the question Further information is requested label Jul 26, 2022
@samwu4166
Copy link

SQL Server

Once snapshot isolation is enabled, updated row versions for each transaction must be maintained. Prior to SQL Server 2019, these versions were stored in tempdb. SQL Server 2019 introduces a new feature, Accelerated Database Recovery (ADR) which requires its own set of row versions.

ref: https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql/snapshot-isolation-in-sql-server

@jxiu0129
Copy link

  • 幾個 transaction 幾個 version
  • snapshot 範圍多大?不同db有自己的設計
  • 只標記修改到的 row,有出錯再增對該標記 rollback

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

4 participants