Hao Hao has posted comments on this change. ( http://gerrit.cloudera.org:8080/16752 )
Change subject: tablet: allow interleaving of row liveness between compaction input rows ...................................................................... Patch Set 2: (3 comments) http://gerrit.cloudera.org:8080/#/c/16752/2/src/kudu/tablet/compaction.cc File src/kudu/tablet/compaction.cc: http://gerrit.cloudera.org:8080/#/c/16752/2/src/kudu/tablet/compaction.cc@318 PS2, Line 318: // UNDO(del@5) <- BASE(a) -> REDO(del@10) -> REDO(reins@25) // main MRS : // UNDO(del@15) <- BASE(a) -> REDO(del@20) // txn MRS Wondering what will happen if UNDO(del@5) <- BASE(a) -> REDO(del@10) -> REDO(reins@25) ->REDO(del@35) // main MRS UNDO(del@15) <- BASE(a) -> REDO(del@20) -> REDO(reins@40) ->REDO(del@45) // txn MRS it will be transferred to the following? UNDO(del@15) <- BASE(a) -> REDO(del@20) -> REDO(reins@25) ->REDO(del@35)-> REDO(reins@40) ->REDO(del@45) // txn MRS UNDO(del@5) <- BASE(a) -> REDO(del@10) // main MRS http://gerrit.cloudera.org:8080/#/c/16752/2/src/kudu/tablet/compaction.cc@390 PS2, Line 390: For instance this is a valid history with non-disjoint REDO histories Just for my own understanding, wondering when this happen if all the ops are not in the same txn? http://gerrit.cloudera.org:8080/#/c/16752/2/src/kudu/tablet/compaction.cc@453 PS2, Line 453: TransferRedoHistory It seems for all REDOs in the 'older' that are greater than the REDO head of 'newer' will be transferred to the end of the 'newer' REDO. What if there is a overlapped between the transferred REDOs and the 'newer' REDO? e.g. UNDO(del@5) <- BASE(a) -> REDO(del@10) -> REDO(reins@25) ->REDO(del@35) // main MRS UNDO(del@15) <- BASE(a) -> REDO(del@20) -> REDO(reins@40) ->REDO(del@45) // txn MRS will be transferred to the following? UNDO(del@15) <- BASE(a) -> REDO(del@20) -> REDO(reins@40) ->REDO(del@45) -> REDO(reins@25) ->REDO(del@35) // txn MRS Do you think it is a valid example?Will it matter if the 'newer' REDO is out of sequence? -- To view, visit http://gerrit.cloudera.org:8080/16752 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I042a7d70d32edf9d2a3a077790821893f162880a Gerrit-Change-Number: 16752 Gerrit-PatchSet: 2 Gerrit-Owner: Andrew Wong <aw...@cloudera.com> Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com> Gerrit-Reviewer: Andrew Wong <aw...@cloudera.com> Gerrit-Reviewer: Grant Henke <granthe...@apache.org> Gerrit-Reviewer: Hao Hao <hao....@cloudera.com> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tidy Bot (241) Gerrit-Comment-Date: Tue, 08 Dec 2020 01:00:05 +0000 Gerrit-HasComments: Yes