Hao Hao has posted comments on this change. ( http://gerrit.cloudera.org:8080/17037 )
Change subject: KUDU-2612 tablet servers automatically register txn participants ...................................................................... Patch Set 6: (7 comments) Just a first pass through. http://gerrit.cloudera.org:8080/#/c/17037/6/src/kudu/tablet/ops/participant_op.cc File src/kudu/tablet/ops/participant_op.cc: http://gerrit.cloudera.org:8080/#/c/17037/6/src/kudu/tablet/ops/participant_op.cc@197 PS6, Line 197: RETURN_NOT_OK(tablet_replica_->UnregisterTxnOpDispatcher(txn_id())); So begin commit can time out if the there are still writes pending when the retries finish? http://gerrit.cloudera.org:8080/#/c/17037/6/src/kudu/tablet/tablet_replica.h File src/kudu/tablet/tablet_replica.h: http://gerrit.cloudera.org:8080/#/c/17037/6/src/kudu/tablet/tablet_replica.h@176 PS6, Line 176: void SubmitPendingTxnOps(int64_t txn_id); : void CancelPendingTxnOps(int64_t txn_id, const Status& s); nit: would you mind doc these two? Thanks! http://gerrit.cloudera.org:8080/#/c/17037/6/src/kudu/tablet/tablet_replica.h@458 PS6, Line 458: bool ready_; : bool unregistered_; : Status inflight_status_; : std::deque<std::unique_ptr<WriteOpState>> ops_queue_; nit: would you mind also doc these? http://gerrit.cloudera.org:8080/#/c/17037/6/src/kudu/tablet/tablet_replica.cc File src/kudu/tablet/tablet_replica.cc: http://gerrit.cloudera.org:8080/#/c/17037/6/src/kudu/tablet/tablet_replica.cc@79 PS6, Line 79: 2 how this is evaluated. If default is 2, it doesn't seem to help a lot for buffering writes before begin txn? http://gerrit.cloudera.org:8080/#/c/17037/5/src/kudu/tserver/ts_tablet_manager.h File src/kudu/tserver/ts_tablet_manager.h: http://gerrit.cloudera.org:8080/#/c/17037/5/src/kudu/tserver/ts_tablet_manager.h@247 PS5, Line 247: process nit: to process for transactional write operations. http://gerrit.cloudera.org:8080/#/c/17037/5/src/kudu/tserver/ts_tablet_manager.h@273 PS5, Line 273: static void RegisterAndBeginParticipantTxnTask( nit: add a comment. http://gerrit.cloudera.org:8080/#/c/17037/5/src/kudu/tserver/ts_tablet_manager.cc File src/kudu/tserver/ts_tablet_manager.cc: http://gerrit.cloudera.org:8080/#/c/17037/5/src/kudu/tserver/ts_tablet_manager.cc@1115 PS5, Line 1115: MonoTime deadline, : StatusCallback cb) { : VLOG(3) << Substitute("registering participant $0 for txn ID $1", : replica->tablet_id(), txn_id); : DCHECK(txn_system_client); : // it is ok to check time out even before the actual RegisterParticipant get called? -- To view, visit http://gerrit.cloudera.org:8080/17037 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ia383f7afd208c44695c57aab82e3818fa1712ce6 Gerrit-Change-Number: 17037 Gerrit-PatchSet: 6 Gerrit-Owner: Alexey Serbin <[email protected]> Gerrit-Reviewer: Alexey Serbin <[email protected]> Gerrit-Reviewer: Andrew Wong <[email protected]> Gerrit-Reviewer: Hao Hao <[email protected]> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tidy Bot (241) Gerrit-Comment-Date: Thu, 18 Feb 2021 21:49:50 +0000 Gerrit-HasComments: Yes
