Todd Lipcon has posted comments on this change. Change subject: KUDU-798 (part 3) Make replica transactions start/abort on the consensus thread ......................................................................
Patch Set 6: (3 comments) http://gerrit.cloudera.org:8080/#/c/5294/6/src/kudu/tablet/transactions/transaction_driver.cc File src/kudu/tablet/transactions/transaction_driver.cc: Line 148: RETURN_NOT_OK(txn_tracker_->Add(this)); if this fails, then it seems like transaction_->Start() would have been called, and then we're relying on the destructor here to abort the mvcc transaction? is that path well covered? not sure if we have a test which makes a replica transaction tracker hit its memory limit, and KUDU-625 makes me nervous PS6, Line 421: If replication has failed we need to make sure the transaction is removed from mvcc before we : // return from this method, seems like it would be cleaner to just be using some kind of locking here... I don't want to block progress on this if we have stress tests showing that it works OK, but let's think more about how to restructure the different prepare/replicate/etc interleavings to be more comprehensible. PS6, Line 429: replication_state_copy why not just read 'status' directly? -- To view, visit http://gerrit.cloudera.org:8080/5294 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: comment Gerrit-Change-Id: Ie360e597eea86551c453717d7a1a000848027f4c Gerrit-PatchSet: 6 Gerrit-Project: kudu Gerrit-Branch: master Gerrit-Owner: David Ribeiro Alves <dral...@apache.org> Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com> Gerrit-Reviewer: David Ribeiro Alves <dral...@apache.org> Gerrit-Reviewer: Kudu Jenkins Gerrit-Reviewer: Mike Percy <mpe...@apache.org> Gerrit-Reviewer: Todd Lipcon <t...@apache.org> Gerrit-HasComments: Yes