Adar Dembo has posted comments on this change.

Change subject: KUDU-1807 (part 2): ban GetTableSchema for table createdness in 
clients
......................................................................


Patch Set 2:

(3 comments)

http://gerrit.cloudera.org:8080/#/c/8026/2//COMMIT_MSG
Commit Message:

PS2, Line 20: with TABLET_NOT_RUNNING
            :   master errors
> Mind pointing me where that is?
When the master responds to GetTableLocations with a TABLET_NOT_RUNNING error, 
it's also got a ServiceUnavailable status. The Java client automatically 
retries these after backing off; the code that kicks off the retry is here: 
https://github.com/apache/kudu/blob/master/java/kudu-client/src/main/java/org/apache/kudu/client/RpcProxy.java#L357


http://gerrit.cloudera.org:8080/#/c/8026/2/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
File java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java:

Line 641:           // TODO(adar): how can we do 
getTableSchemaRpc.setParent(rpc)?
> Have a getTableSchema that takes a parent rpc?
Good idea.

My first try was to modify getTableSchema() to return the RPC after sending it, 
and then this code called setParent() and added a callback to 
rpc.getDeferred(). But if the RPC response came in before rpc.getDeferred(), 
we'd end up adding the callback to some useless deferred and hang the client.


http://gerrit.cloudera.org:8080/#/c/8026/1/java/kudu-client/src/main/java/org/apache/kudu/client/IsCreateTableDoneRequest.java
File 
java/kudu-client/src/main/java/org/apache/kudu/client/IsCreateTableDoneRequest.java:

Line 36:   IsCreateTableDoneRequest(KuduTable table, String name) {
> I believe it's wrong to use the table name in any context where the KuduTab
Alright. I chased this rabbit hole down and wound up with a larger patch and a 
separate patch for the C++ client. Enjoy the review.


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I54fa07dc34a97f1c9da06ec9129d6d4590b7aac6
Gerrit-PatchSet: 2
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Adar Dembo <[email protected]>
Gerrit-Reviewer: Adar Dembo <[email protected]>
Gerrit-Reviewer: Dan Burkert <[email protected]>
Gerrit-Reviewer: Jean-Daniel Cryans <[email protected]>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Todd Lipcon <[email protected]>
Gerrit-HasComments: Yes

Reply via email to