Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagetext
|           key part          |           |         |
|-----------------------------|  lockVer  |   link  |
| cache_id | hash |  mvccVer  |           |         |

 


mvccVer - MVCC version of transaction which has created the row
lockVer - MVCC version of transaction which holds a lock on the row

...

Code Block
languagetext
|    key part    |
|----------------|
| link | mvccVer |

 


link - link to the data
mvccVer - XID of transaction who created the row

...

Code Block
languagetext
|              |           |         |            |          |           |             |             |             |
| payload size | next_link | mvccVer | newMvccVer | cache_id | key_bytes | value_bytes | row_version | expire_time |
|              |           |         |            |          |           |             |             |             |

...


mvccVer - TX id which created this row.
newMvccVer - TX id which updated this row or NA in this is the last row version (need to decide whether the row is visible for current reader).

...

After all rows are processed, corresponding TxLog records can be deleted as well. 

Related documents:

View file
name2017.mvcc.vldb.pdf
height250
View file
nameconcurrency-distributed-databases.pdf
height250
View file
namep209-yu.pdf
height250
View file
namerethink-mvcc.pdf
height250