Andrew Wong has posted comments on this change. ( http://gerrit.cloudera.org:8080/16277 )
Change subject: KUDU-2612 p7: add transaction participants to tablets ...................................................................... Patch Set 6: (8 comments) http://gerrit.cloudera.org:8080/#/c/16277/4/src/kudu/integration-tests/txn_participant-itest.cc File src/kudu/integration-tests/txn_participant-itest.cc: http://gerrit.cloudera.org:8080/#/c/16277/4/src/kudu/integration-tests/txn_participant-itest.cc@84 PS4, Line 84: statuses[i] = > nit: maybe, if this assignment assumes that statuses[i].ok() at this moment Done http://gerrit.cloudera.org:8080/#/c/16277/4/src/kudu/integration-tests/txn_participant-itest.cc@123 PS4, Line 123: ST_F(TxnParticipantITest > Does it make sense to move it into the SetUp() method? Done http://gerrit.cloudera.org:8080/#/c/16277/4/src/kudu/integration-tests/txn_participant-itest.cc@200 PS4, Line 200: vector<TabletReplica*> > Does it make sense to move it into the SetUp() method? Done http://gerrit.cloudera.org:8080/#/c/16277/4/src/kudu/integration-tests/txn_participant-itest.cc@219 PS4, Line 219: vecto > nit: constexpr ? Done http://gerrit.cloudera.org:8080/#/c/16277/4/src/kudu/tablet/txn_participant.h File src/kudu/tablet/txn_participant.h: http://gerrit.cloudera.org:8080/#/c/16277/4/src/kudu/tablet/txn_participant.h@135 PS4, Line 135: void B > here and below: if there methods cannot return anything except for Status:: Done http://gerrit.cloudera.org:8080/#/c/16277/4/src/kudu/tablet/txn_participant.h@136 PS4, Line 136: SetState( > Is it intended that all Validate... are gone in case of a release build? Yeah, Validate... would have been called in the prepare phase already -- I added it again here to ensure the state could not somehow change. That said, I'll remove this entirely since this will not be the case when we bootstrap. http://gerrit.cloudera.org:8080/#/c/16277/4/src/kudu/tablet/txn_participant.h@213 PS4, Line 213: std::vector<TxnEntry> > How do the caller know if it did anything to the requested record? And whe Not sure I understand the question: are you asking whether this should indicate to callers whether the in-memory transaction was deleted? http://gerrit.cloudera.org:8080/#/c/16277/4/src/kudu/tablet/txn_participant.h@223 PS4, Line 223: inline bool operator==(const TxnParticipant::TxnEntry& lhs, const TxnParticipant::TxnEntry& rhs) { : return lhs.txn_id == rhs.txn_id && : lhs.state == rhs.state && : lhs.commit_timestamp == rhs.commit_timestamp; : } > Is this needed? I thought this would be generated automatically by the com I was surprised too, but it is needed. C++ won't automatically define equality for structs: https://stackoverflow.com/questions/5740310/no-operator-found-while-comparing-structs-in-c/5740505 -- To view, visit http://gerrit.cloudera.org:8080/16277 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I39201ce1d911308cd28f3f4790a126e30052f3bf Gerrit-Change-Number: 16277 Gerrit-PatchSet: 6 Gerrit-Owner: Andrew Wong <aw...@cloudera.com> Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com> Gerrit-Reviewer: Andrew Wong <aw...@cloudera.com> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Comment-Date: Wed, 12 Aug 2020 23:13:50 +0000 Gerrit-HasComments: Yes