You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@kudu.apache.org by "yejiabao (Code Review)" <ge...@cloudera.org> on 2022/01/30 12:21:48 UTC

[kudu-CR] [java] KUDU-3240 Make connection negotiation timeout configurable for Java client

yejiabao has uploaded this change for review. ( http://gerrit.cloudera.org:8080/18183


Change subject: [java] KUDU-3240 Make connection negotiation timeout configurable for Java client
......................................................................

[java] KUDU-3240 Make connection negotiation timeout configurable for Java client

This patch addresses KUDU-3240 for kudu java client, making the
 timeout for the connection negotiation configurable.

Change-Id: Iac1fbc2df3118cbab2f87751c5e21346478f72f9
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Connection.java
M java/kudu-client/src/main/java/org/apache/kudu/client/ConnectionCache.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduClient.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestTimeouts.java
5 files changed, 40 insertions(+), 7 deletions(-)



  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/83/18183/1
-- 
To view, visit http://gerrit.cloudera.org:8080/18183
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: Iac1fbc2df3118cbab2f87751c5e21346478f72f9
Gerrit-Change-Number: 18183
Gerrit-PatchSet: 1
Gerrit-Owner: yejiabao <ye...@huawei.com>

[kudu-CR] [java] KUDU-3240 Make connection negotiation timeout configurable for Java client

Posted by "yejiabao (Code Review)" <ge...@cloudera.org>.
Hello Will Berkeley, Alexey Serbin, Kudu Jenkins, Bankim Bhavsar, 

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/18183

to look at the new patch set (#3).

Change subject: [java] KUDU-3240 Make connection negotiation timeout configurable for Java client
......................................................................

[java] KUDU-3240 Make connection negotiation timeout configurable for Java client

This patch addresses KUDU-3240 for Kudu Java client, making the
timeout for the connection negotiation configurable.

Change-Id: Iac1fbc2df3118cbab2f87751c5e21346478f72f9
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Connection.java
M java/kudu-client/src/main/java/org/apache/kudu/client/ConnectionCache.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduClient.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestTimeouts.java
5 files changed, 41 insertions(+), 14 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/83/18183/3
-- 
To view, visit http://gerrit.cloudera.org:8080/18183
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Iac1fbc2df3118cbab2f87751c5e21346478f72f9
Gerrit-Change-Number: 18183
Gerrit-PatchSet: 3
Gerrit-Owner: yejiabao <ye...@huawei.com>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Bankim Bhavsar <ba...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Will Berkeley <wd...@gmail.com>

[kudu-CR] [java] KUDU-3240 Make connection negotiation timeout configurable for Java client

Posted by "Alexey Serbin (Code Review)" <ge...@cloudera.org>.
Alexey Serbin has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/18183 )

Change subject: [java] KUDU-3240 Make connection negotiation timeout configurable for Java client
......................................................................

[java] KUDU-3240 Make connection negotiation timeout configurable for Java client

This patch addresses KUDU-3240 for Kudu Java client, making the
timeout for the connection negotiation configurable.

Change-Id: Iac1fbc2df3118cbab2f87751c5e21346478f72f9
Reviewed-on: http://gerrit.cloudera.org:8080/18183
Tested-by: Kudu Jenkins
Reviewed-by: Alexey Serbin <as...@cloudera.com>
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Connection.java
M java/kudu-client/src/main/java/org/apache/kudu/client/ConnectionCache.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduClient.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestTimeouts.java
5 files changed, 41 insertions(+), 14 deletions(-)

Approvals:
  Kudu Jenkins: Verified
  Alexey Serbin: Looks good to me, approved

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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: Iac1fbc2df3118cbab2f87751c5e21346478f72f9
Gerrit-Change-Number: 18183
Gerrit-PatchSet: 4
Gerrit-Owner: yejiabao <ye...@huawei.com>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Bankim Bhavsar <ba...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Will Berkeley <wd...@gmail.com>
Gerrit-Reviewer: yejiabao <ye...@huawei.com>

[kudu-CR] [java] KUDU-3240 Make connection negotiation timeout configurable for Java client

Posted by "yejiabao (Code Review)" <ge...@cloudera.org>.
yejiabao has posted comments on this change. ( http://gerrit.cloudera.org:8080/18183 )

Change subject: [java] KUDU-3240 Make connection negotiation timeout configurable for Java client
......................................................................


Patch Set 2:

(6 comments)

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

http://gerrit.cloudera.org:8080/#/c/18183/2//COMMIT_MSG@9
PS2, Line 9: kudu
> nit: Kudu
Done


http://gerrit.cloudera.org:8080/#/c/18183/2//COMMIT_MSG@9
PS2, Line 9: java
> nit: Java
Done


http://gerrit.cloudera.org:8080/#/c/18183/2//COMMIT_MSG@10
PS2, Line 10:  
> nit: remove the extra space
Done


http://gerrit.cloudera.org:8080/#/c/18183/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:

http://gerrit.cloudera.org:8080/#/c/18183/2/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java@2845
PS2, Line 2845: defaultNegotiationTimeoutMs
> In C++ client the corresponding method is called 'connection_negotiation_ti
Done


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

http://gerrit.cloudera.org:8080/#/c/18183/2/java/kudu-client/src/main/java/org/apache/kudu/client/KuduClient.java@545
PS2, Line 545: defaultNegotiationTimeoutMs
> Same as in AsyncKuduClientBuilder: rename into 'connectionNegotiationTimeou
Done


http://gerrit.cloudera.org:8080/#/c/18183/2/java/kudu-client/src/test/java/org/apache/kudu/client/TestTimeouts.java
File java/kudu-client/src/test/java/org/apache/kudu/client/TestTimeouts.java:

http://gerrit.cloudera.org:8080/#/c/18183/2/java/kudu-client/src/test/java/org/apache/kudu/client/TestTimeouts.java@127
PS2, Line 127:    * KUDU-1868: This tests that negotiation can time out on the client side. It passes if the
             :    * hardcoded negotiation timeout is lowered to 500ms. In general it is hard to get it to work
             :    * right because injecting latency to negotiation server side affects all client connections,
             :    * including the harness's Java client, the kudu tool used to create the test cluster, and the
             :    * other members of the test cluster. There isn't a way to configure the kudu tool's
             :    * negotiation timeout within a Java test, presently.
> It seems this comments needs an update since the required functionality has
Done



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Iac1fbc2df3118cbab2f87751c5e21346478f72f9
Gerrit-Change-Number: 18183
Gerrit-PatchSet: 2
Gerrit-Owner: yejiabao <ye...@huawei.com>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Bankim Bhavsar <ba...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Will Berkeley <wd...@gmail.com>
Gerrit-Reviewer: yejiabao <ye...@huawei.com>
Gerrit-Comment-Date: Mon, 31 Jan 2022 13:55:04 +0000
Gerrit-HasComments: Yes

[kudu-CR] [java] KUDU-3240 Make connection negotiation timeout configurable for Java client

Posted by "Alexey Serbin (Code Review)" <ge...@cloudera.org>.
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/18183 )

Change subject: [java] KUDU-3240 Make connection negotiation timeout configurable for Java client
......................................................................


Patch Set 3: Code-Review+2


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Iac1fbc2df3118cbab2f87751c5e21346478f72f9
Gerrit-Change-Number: 18183
Gerrit-PatchSet: 3
Gerrit-Owner: yejiabao <ye...@huawei.com>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Bankim Bhavsar <ba...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Will Berkeley <wd...@gmail.com>
Gerrit-Reviewer: yejiabao <ye...@huawei.com>
Gerrit-Comment-Date: Tue, 01 Feb 2022 19:19:22 +0000
Gerrit-HasComments: No

[kudu-CR] [java] KUDU-3240 Make connection negotiation timeout configurable for java client

Posted by "yejiabao (Code Review)" <ge...@cloudera.org>.
Hello Will Berkeley, Alexey Serbin, Kudu Jenkins, Bankim Bhavsar, 

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/18183

to look at the new patch set (#2).

Change subject: [java] KUDU-3240 Make connection negotiation timeout configurable for java client
......................................................................

[java] KUDU-3240 Make connection negotiation timeout configurable for java client

This patch addresses KUDU-3240 for kudu java client, making the
 timeout for the connection negotiation configurable.

Change-Id: Iac1fbc2df3118cbab2f87751c5e21346478f72f9
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
M java/kudu-client/src/main/java/org/apache/kudu/client/Connection.java
M java/kudu-client/src/main/java/org/apache/kudu/client/ConnectionCache.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduClient.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestTimeouts.java
5 files changed, 40 insertions(+), 7 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/83/18183/2
-- 
To view, visit http://gerrit.cloudera.org:8080/18183
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: Iac1fbc2df3118cbab2f87751c5e21346478f72f9
Gerrit-Change-Number: 18183
Gerrit-PatchSet: 2
Gerrit-Owner: yejiabao <ye...@huawei.com>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Bankim Bhavsar <ba...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Will Berkeley <wd...@gmail.com>

[kudu-CR] [java] KUDU-3240 Make connection negotiation timeout configurable for java client

Posted by "Alexey Serbin (Code Review)" <ge...@cloudera.org>.
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/18183 )

Change subject: [java] KUDU-3240 Make connection negotiation timeout configurable for java client
......................................................................


Patch Set 2:

(6 comments)

Thank you for the patch!

Overall looks good, just a few nits regarding the naming and outdated comments.

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

http://gerrit.cloudera.org:8080/#/c/18183/2//COMMIT_MSG@9
PS2, Line 9: kudu
nit: Kudu


http://gerrit.cloudera.org:8080/#/c/18183/2//COMMIT_MSG@9
PS2, Line 9: java
nit: Java


http://gerrit.cloudera.org:8080/#/c/18183/2//COMMIT_MSG@10
PS2, Line 10:  
nit: remove the extra space


http://gerrit.cloudera.org:8080/#/c/18183/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:

http://gerrit.cloudera.org:8080/#/c/18183/2/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java@2845
PS2, Line 2845: defaultNegotiationTimeoutMs
In C++ client the corresponding method is called 'connection_negotiation_timeout()': it guess it make sense to keep the naming consistent between the two client implementations and call this new method 'connectionNegotiationTimeoutMs()'


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

http://gerrit.cloudera.org:8080/#/c/18183/2/java/kudu-client/src/main/java/org/apache/kudu/client/KuduClient.java@545
PS2, Line 545: defaultNegotiationTimeoutMs
Same as in AsyncKuduClientBuilder: rename into 'connectionNegotiationTimeoutMs()'


http://gerrit.cloudera.org:8080/#/c/18183/2/java/kudu-client/src/test/java/org/apache/kudu/client/TestTimeouts.java
File java/kudu-client/src/test/java/org/apache/kudu/client/TestTimeouts.java:

http://gerrit.cloudera.org:8080/#/c/18183/2/java/kudu-client/src/test/java/org/apache/kudu/client/TestTimeouts.java@127
PS2, Line 127:    * KUDU-1868: This tests that negotiation can time out on the client side. It passes if the
             :    * hardcoded negotiation timeout is lowered to 500ms. In general it is hard to get it to work
             :    * right because injecting latency to negotiation server side affects all client connections,
             :    * including the harness's Java client, the kudu tool used to create the test cluster, and the
             :    * other members of the test cluster. There isn't a way to configure the kudu tool's
             :    * negotiation timeout within a Java test, presently.
It seems this comments needs an update since the required functionality has been implemented in this patch.



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: Iac1fbc2df3118cbab2f87751c5e21346478f72f9
Gerrit-Change-Number: 18183
Gerrit-PatchSet: 2
Gerrit-Owner: yejiabao <ye...@huawei.com>
Gerrit-Reviewer: Alexey Serbin <as...@cloudera.com>
Gerrit-Reviewer: Bankim Bhavsar <ba...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Will Berkeley <wd...@gmail.com>
Gerrit-Comment-Date: Mon, 31 Jan 2022 00:32:16 +0000
Gerrit-HasComments: Yes