Andrew Wong has posted comments on this change. ( http://gerrit.cloudera.org:8080/16510 )
Change subject: KUDU-2612: have MRS iteration account for txn metadata ...................................................................... Patch Set 6: (5 comments) http://gerrit.cloudera.org:8080/#/c/16510/6//COMMIT_MSG Commit Message: http://gerrit.cloudera.org:8080/#/c/16510/6//COMMIT_MSG@12 PS6, Line 12: TxnMetadata in the MRS > Wondering is TxnMetadata and MRS is a 1 to 1 mapping? It seems so, by rea Right, there will be 1 MRS per transaction. This will make it easier to commit and abort transactions -- instead of updating several rows of a transaction, commit/abort will be metadata operations (e.g. mark the transaction's MRS as committed, or delete the MRS if the transaction was aborted). http://gerrit.cloudera.org:8080/#/c/16510/6//COMMIT_MSG@14 PS6, Line 14: relevancy > Is relevancy is in terms of scan? I'm not sure what this is asking, but relevancy is a term used in scanning that indicates whether a given mutation is relevant in a scan. http://gerrit.cloudera.org:8080/#/c/16510/6/src/kudu/tablet/mvcc-test.cc File src/kudu/tablet/mvcc-test.cc: http://gerrit.cloudera.org:8080/#/c/16510/6/src/kudu/tablet/mvcc-test.cc@830 PS6, Line 830: MvccSnapshot initial_snap(initial_ts) > IIUC, the initial snapshot type is kLatest, sorry I miss where in the test I think you might be conflating this with the 'cur_snap_' member in MvccManager. 'cur_snap_' is a kLatest snapshot. This test is not testing 'cur_snap_' -- it is testing kTimestamp snapshots. http://gerrit.cloudera.org:8080/#/c/16510/6/src/kudu/tablet/mvcc.h File src/kudu/tablet/mvcc.h: http://gerrit.cloudera.org:8080/#/c/16510/6/src/kudu/tablet/mvcc.h@101 PS6, Line 101: If the commit MVCC op finished applying, the commit process is : // complete, > Sorry, but I miss the part how do we make sure the mvcc op is not applied u Here's a summary of the commit process: https://gerrit.cloudera.org/c/16470/12/src/kudu/consensus/time_manager.h#88 And here's where the MVCC op is completed, only upon performing the FINALIZE_COMMIT or ABORT_TXN: https://gerrit.cloudera.org/c/16470/12/src/kudu/tablet/ops/participant_op.cc#181 http://gerrit.cloudera.org:8080/#/c/16510/6/src/kudu/tablet/txn_metadata.h File src/kudu/tablet/txn_metadata.h: http://gerrit.cloudera.org:8080/#/c/16510/6/src/kudu/tablet/txn_metadata.h@89 PS6, Line 89: commit_mvcc_op_timestamp_ > If I understand correctly, this is BEGIN_COMMIT mvcc op? If so, do you thin Kind of -- it is initialized in the BEGIN_COMMIT op, but it is more broadly used as a part of the commit process, described here: https://gerrit.cloudera.org/c/16470/12/src/kudu/consensus/time_manager.h#88 -- To view, visit http://gerrit.cloudera.org:8080/16510 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I6bb02c6025eea1a327cf9d9ee1f14a38d63ae4ad Gerrit-Change-Number: 16510 Gerrit-PatchSet: 6 Gerrit-Owner: Andrew Wong <[email protected]> Gerrit-Reviewer: Alexey Serbin <[email protected]> Gerrit-Reviewer: Andrew Wong <[email protected]> Gerrit-Reviewer: Grant Henke <[email protected]> Gerrit-Reviewer: Hao Hao <[email protected]> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tidy Bot (241) Gerrit-Comment-Date: Mon, 19 Oct 2020 20:42:52 +0000 Gerrit-HasComments: Yes
