Andrew Wong has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/16194 )

Change subject: KUDU-2612 p6: add coordination calls to system client
......................................................................


Patch Set 3:

(15 comments)

http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/client/meta_cache.h
File src/kudu/client/meta_cache.h:

http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/client/meta_cache.h@104
PS3, Line 104: std::shared_ptr<tserver::TabletServerAdminServiceProxy> 
admin_proxy() const;
> This new method follows the suite established earlier by the proxy() method
Done


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/client/meta_cache.cc
File src/kudu/client/meta_cache.cc:

http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/client/meta_cache.cc@207
PS3, Line 207: CHECK
> nit: switch to DCHECK()?
Done


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/integration-tests/txn_status_table-itest.cc
File src/kudu/integration-tests/txn_status_table-itest.cc:

http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/integration-tests/txn_status_table-itest.cc@162
PS3, Line 162: "user"
> nit: maybe, make this a constant (constexpr)?
Done


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/integration-tests/txn_status_table-itest.cc@177
PS3, Line 177: until it
             :   // times out
> Is this actually verifiable by this test scenario?  I.e., how to make sure
Done, updated to check that if the tserver comes back up, the call is 
successful.


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/integration-tests/txn_status_table-itest.cc@190
PS3, Line 190: "user"
> If looking at that as a black box, does it make sense to  add a scenario wi
Done


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/integration-tests/txn_status_table-itest.cc@214
PS3, Line 214:     KuduTest::SetUp();
> warning: qualified name 'KuduTest::SetUp' refers to a member overridden in
Ack


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/integration-tests/txn_status_table-itest.cc@231
PS3, Line 231:       if (!tablets.empty()) {
             :         return tablets[0];
             :       }
> Is there a requirement to have the same tablet identifier among the results
Done


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/integration-tests/txn_status_table-itest.cc@300
PS3, Line 300:   ASSERT_OK(txn_sys_client_->CreateTxnStatusTable(100, 3));
             :   ASSERT_OK(txn_sys_client_->OpenTxnStatusTable());
             :   ASSERT_OK(txn_sys_client_->BeginTransaction(1, "user"));
> This looks like a pattern in all three tests scenarios.  Maybe, represent t
Done


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/integration-tests/txn_status_table-itest.cc@315
PS3, Line 315: } // namespace itest
> Ah, those are actually present already.  I started reading the patch in rev
Ack


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/transactions/coordinator_rpc.h
File src/kudu/transactions/coordinator_rpc.h:

http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/transactions/coordinator_rpc.h@58
PS3, Line 58: CoordinatorRpc*
> Is it a requirement to return a raw pointer?  If not, maybe consider return
It makes the memory-management a bit cheaper, since the memory may outlive a 
unique_ptr unless we start tracking out-going calls in some internal map.


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/transactions/coordinator_rpc.h@58
PS3, Line 58: std::unique_ptr<TxnStatusTabletContext> ctx
> Is it possible to allocate this on the stack and use move semantics when pa
It becomes tricky because of how we capture the context in 
CoordinateTransactionAsync(). I left a TODO to address this once move-capture 
lambda become a thing in our codebase.


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/transactions/coordinator_rpc.h@62
PS3, Line 62: virtual
> nit: why virtual is necessary here (the base class has virtual destructor a
Done


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/transactions/coordinator_rpc.cc
File src/kudu/transactions/coordinator_rpc.cc:

http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/transactions/coordinator_rpc.cc@104
PS3, Line 104:
> nit: the indent is one space off
Done


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/transactions/txn_system_client.h
File src/kudu/transactions/txn_system_client.h:

http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/transactions/txn_system_client.h@79
PS3, Line 79: client::sp::shared_ptr<client::KuduTable>
> Given this interface is for internal consumption only and doesn't have the
Done


http://gerrit.cloudera.org:8080/#/c/16194/3/src/kudu/transactions/txn_system_client.h@85
PS3, Line 85: client::sp::shared_ptr<client::KuduClient>
> Ditto here w.r.t. std::shared_ptr
Done



--
To view, visit http://gerrit.cloudera.org:8080/16194
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I4126cb3dcf379b397f84578c2265dca3ece3d98c
Gerrit-Change-Number: 16194
Gerrit-PatchSet: 3
Gerrit-Owner: Andrew Wong <[email protected]>
Gerrit-Reviewer: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Andrew Wong <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Tidy Bot (241)
Gerrit-Comment-Date: Tue, 28 Jul 2020 17:51:01 +0000
Gerrit-HasComments: Yes

Reply via email to