[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-03-26 Thread Yifan Zhang (Code Review)
Yifan Zhang has submitted this change and it was merged. ( 
http://gerrit.cloudera.org:8080/20761 )

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..

[Java] KUDU-3498 Scanner keeps alive in periodically

Kudu caches the scanner in the tablet server for continuing
reading. It will be expired if the idle time is over the defined
scanner ttl time. Sometimes the client reads a batch of data,
if the data is every large, it takes a long time to handle it.
Then the client reads the next batch using the same scanner, the
scanner will be expired even if it has sent a keep alive request.

This patch adds support for keeping a scanner alive periodically.
It uses a timer to send keep alive requests background. So,
it will never be expired when the scanner is in using.

Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Reviewed-on: http://gerrit.cloudera.org:8080/20761
Reviewed-by: Yifan Zhang 
Tested-by: Yifan Zhang 
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
3 files changed, 205 insertions(+), 1 deletion(-)

Approvals:
  Yifan Zhang: Looks good to me, approved; Verified

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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 11
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-03-26 Thread Yifan Zhang (Code Review)
Yifan Zhang has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/20761 )

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..


Patch Set 10: Verified+1

Unrelated test failures in SubprocessServerTest.LargePayloadSize(RELEASE), 
MaintenanceManagerTest.TestNewOpsDontGetScheduledDuringUnregister(TSAN), 
CatalogManagerConfigurations/MasterStressTest.Test/3(TSAN).


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 10
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 
Gerrit-Comment-Date: Tue, 26 Mar 2024 12:23:01 +
Gerrit-HasComments: No


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-03-26 Thread Yifan Zhang (Code Review)
Yifan Zhang has removed a vote on this change.

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..


Removed Verified-1 by Kudu Jenkins (120)
--
To view, visit http://gerrit.cloudera.org:8080/20761
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: deleteVote
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 10
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-03-26 Thread Yifan Zhang (Code Review)
Yifan Zhang has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/20761 )

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..


Patch Set 10: Code-Review+2


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 10
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 
Gerrit-Comment-Date: Tue, 26 Mar 2024 11:49:21 +
Gerrit-HasComments: No


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-03-21 Thread Yifan Zhang (Code Review)
Yifan Zhang has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/20761 )

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..


Patch Set 9: Code-Review+1


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 9
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 
Gerrit-Comment-Date: Thu, 21 Mar 2024 14:27:46 +
Gerrit-HasComments: No


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-02-01 Thread Wang Xixu (Code Review)
Wang Xixu has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/20761 )

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..


Patch Set 9:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/20761/8/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
File java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java:

http://gerrit.cloudera.org:8080/#/c/20761/8/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java@430
PS8, Line 430:   int rowCount = 0;
> We have a checkstyle error here:
Done



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 9
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 
Gerrit-Comment-Date: Fri, 02 Feb 2024 07:56:33 +
Gerrit-HasComments: Yes


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-02-01 Thread Wang Xixu (Code Review)
Hello Yifan Zhang, Kudu Jenkins,

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

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

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

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..

[Java] KUDU-3498 Scanner keeps alive in periodically

Kudu caches the scanner in the tablet server for continuing
reading. It will be expired if the idle time is over the defined
scanner ttl time. Sometimes the client reads a batch of data,
if the data is every large, it takes a long time to handle it.
Then the client reads the next batch using the same scanner, the
scanner will be expired even if it has sent a keep alive request.

This patch adds support for keeping a scanner alive periodically.
It uses a timer to send keep alive requests background. So,
it will never be expired when the scanner is in using.

Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
3 files changed, 205 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/61/20761/9
--
To view, visit http://gerrit.cloudera.org:8080/20761
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 9
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-02-01 Thread Yifan Zhang (Code Review)
Yifan Zhang has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/20761 )

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..


Patch Set 8: Code-Review+1

(1 comment)

http://gerrit.cloudera.org:8080/#/c/20761/8/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
File java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java:

http://gerrit.cloudera.org:8080/#/c/20761/8/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java@430
PS8, Line 430:   int row_count = 0;
We have a checkstyle error here:

[ant:checkstyle] [WARN] 
/home/jenkins-slave/workspace/kudu-master/2/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java:430:11:
 Local variable name 'row_count' must match pattern 
'^[a-z]([a-z0-9][a-zA-Z0-9]*)?$'. [LocalVariableName]



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 8
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 
Gerrit-Comment-Date: Fri, 02 Feb 2024 07:46:30 +
Gerrit-HasComments: Yes


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-01-30 Thread Wang Xixu (Code Review)
Wang Xixu has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/20761 )

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..


Patch Set 8:

(3 comments)

http://gerrit.cloudera.org:8080/#/c/20761/7/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
File 
java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java:

http://gerrit.cloudera.org:8080/#/c/20761/7/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java@970
PS7, Line 970:* @param keepAliveIntervalMS the interval of sending 
keep-alive requests.
> nit: Do we have this parameter for the method?
Done


http://gerrit.cloudera.org:8080/#/c/20761/7/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
File java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java:

http://gerrit.cloudera.org:8080/#/c/20761/7/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java@434
PS7, Line 434: row_count += scanner.nextRows().getNumRows();
> nit: We should also verify that we can read all rows inserted without 'scan
Yes, it should verify that we can read all rows inserted. And it is no need to 
check error 'scanner not found'. Because it will throw an exception if 'scanner 
not found' error occurs and the test will fail.


http://gerrit.cloudera.org:8080/#/c/20761/7/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java@474
PS7, Line 474:  /*
 :* Test stoping the keep-alive timer.
 :*/
> nit: Update this comment.
Done



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 8
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 
Gerrit-Comment-Date: Wed, 31 Jan 2024 03:18:21 +
Gerrit-HasComments: Yes


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-01-30 Thread Wang Xixu (Code Review)
Hello Yifan Zhang, Kudu Jenkins,

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

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

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

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..

[Java] KUDU-3498 Scanner keeps alive in periodically

Kudu caches the scanner in the tablet server for continuing
reading. It will be expired if the idle time is over the defined
scanner ttl time. Sometimes the client reads a batch of data,
if the data is every large, it takes a long time to handle it.
Then the client reads the next batch using the same scanner, the
scanner will be expired even if it has sent a keep alive request.

This patch adds support for keeping a scanner alive periodically.
It uses a timer to send keep alive requests background. So,
it will never be expired when the scanner is in using.

Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
3 files changed, 205 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/61/20761/8
--
To view, visit http://gerrit.cloudera.org:8080/20761
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 8
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-01-30 Thread Yifan Zhang (Code Review)
Yifan Zhang has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/20761 )

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..


Patch Set 7:

(3 comments)

http://gerrit.cloudera.org:8080/#/c/20761/7/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
File 
java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java:

http://gerrit.cloudera.org:8080/#/c/20761/7/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java@970
PS7, Line 970:* @param scanner the scanner to keep alive.
nit: Do we have this parameter for the method?


http://gerrit.cloudera.org:8080/#/c/20761/7/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
File java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java:

http://gerrit.cloudera.org:8080/#/c/20761/7/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java@434
PS7, Line 434: scanner.nextRows();
nit: We should also verify that we can read all rows inserted without 'scanner 
not found' error occurs.


http://gerrit.cloudera.org:8080/#/c/20761/7/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java@474
PS7, Line 474:  /*
 :* Test keeping a scanner alive periodically beyond scanner 
ttl.
 :*/
nit: Update this comment.



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 7
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 
Gerrit-Comment-Date: Tue, 30 Jan 2024 08:26:38 +
Gerrit-HasComments: Yes


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-01-15 Thread Wang Xixu (Code Review)
Hello Yifan Zhang, Kudu Jenkins,

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

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

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

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..

[Java] KUDU-3498 Scanner keeps alive in periodically

Kudu caches the scanner in the tablet server for continuing
reading. It will be expired if the idle time is over the defined
scanner ttl time. Sometimes the client reads a batch of data,
if the data is every large, it takes a long time to handle it.
Then the client reads the next batch using the same scanner, the
scanner will be expired even if it has sent a keep alive request.

This patch adds support for keeping a scanner alive periodically.
It uses a timer to send keep alive requests background. So,
it will never be expired when the scanner is in using.

Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
3 files changed, 206 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/61/20761/7
--
To view, visit http://gerrit.cloudera.org:8080/20761
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 7
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-01-15 Thread Wang Xixu (Code Review)
Hello Yifan Zhang, Kudu Jenkins,

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

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

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

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..

[Java] KUDU-3498 Scanner keeps alive in periodically

Kudu caches the scanner in the tablet server for continuing
reading. It will be expired if the idle time is over the defined
scanner ttl time. Sometimes the client reads a batch of data,
if the data is every large, it takes a long time to handle it.
Then the client reads the next batch using the same scanner, the
scanner will be expired even if it has sent a keep alive request.

This patch adds support for keeping a scanner alive periodically.
It uses a timer to send keep alive requests background. So,
it will never be expired when the scanner is in using.

Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
4 files changed, 235 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/61/20761/6
--
To view, visit http://gerrit.cloudera.org:8080/20761
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 6
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-01-14 Thread Wang Xixu (Code Review)
Hello Yifan Zhang, Kudu Jenkins,

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

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

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

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..

[Java] KUDU-3498 Scanner keeps alive in periodically

Kudu caches the scanner in the tablet server for continuing
reading. It will be expired if the idle time is over the defined
scanner ttl time. Sometimes the client reads a batch of data,
if the data is every large, it takes a long time to handle it.
Then the client reads the next batch using the same scanner, the
scanner will be expired even if it has sent a keep alive request.

This patch adds support for keeping a scanner alive periodically.
It uses a timer to send keep alive requests background. So,
it will never be expired when the scanner is in using.

Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
4 files changed, 236 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/61/20761/5
--
To view, visit http://gerrit.cloudera.org:8080/20761
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 5
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-01-14 Thread Wang Xixu (Code Review)
Wang Xixu has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/20761 )

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..


Patch Set 4:

(5 comments)

http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
File 
java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java:

http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java@481
PS3, Line 481:   client.stopKeepAlivePeriodically();
> Should we also call stopKeepAlivePeriodically in the close() function?
Yes, you are right.


http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java@967
PS3, Line 967: l
> nit: can be
Done


http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java
File java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java:

http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java@112
PS3, Line 112: ca
> nit: can be
Done


http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
File java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java:

http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java@424
PS3, Line 424: // the keep-alive timer will be cancelled.
> Could we also verify that the KeepAlive task has been stopped automatically
Done


http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java@461
PS3, Line 461:   Timeout keepAliveTimeout = (Timeout)field.get(asyncClient);
 :   assertFalse(keepAliveTimeout.isCancelled());
> Could you add a comment why we do this?
Done



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 4
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Yifan Zhang 
Gerrit-Comment-Date: Mon, 15 Jan 2024 04:06:24 +
Gerrit-HasComments: Yes


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-01-14 Thread Wang Xixu (Code Review)
Hello Yifan Zhang, Kudu Jenkins,

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

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

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

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..

[Java] KUDU-3498 Scanner keeps alive in periodically

Kudu caches the scanner in the tablet server for continuing
reading. It will be expired if the idle time is over the defined
scanner ttl time. Sometimes the client reads a batch of data,
if the data is every large, it takes a long time to handle it.
Then the client reads the next batch using the same scanner, the
scanner will be expired even if it has sent a keep alive request.

This patch adds support for keeping a scanner alive periodically.
It uses a timer to send keep alive requests background. So,
it will never be expired when the scanner is in using.

Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
4 files changed, 240 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/61/20761/4
--
To view, visit http://gerrit.cloudera.org:8080/20761
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 4
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Yifan Zhang 


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2024-01-13 Thread Yifan Zhang (Code Review)
Yifan Zhang has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/20761 )

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..


Patch Set 3:

(5 comments)

http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
File 
java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java:

http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java@481
PS3, Line 481:   client.stopKeepAlivePeriodically();
Should we also call stopKeepAlivePeriodically in the close() function?


http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java@967
PS3, Line 967: be
nit: can be


http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java
File java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java:

http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java@112
PS3, Line 112: be
nit: can be


http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
File java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java:

http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java@424
PS3, Line 424: scanner.startKeepAlivePeriodically(SHORT_SCANNER_TTL_MS / 
10);
Could we also verify that the KeepAlive task has been stopped automatically?


http://gerrit.cloudera.org:8080/#/c/20761/3/java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java@461
PS3, Line 461: 
assertTrue(scanner.startKeepAlivePeriodically(SHORT_SCANNER_TTL_MS / 10));
 : assertTrue(scanner.stopKeepAlivePeriodically());
Could you add a comment why we do this?



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 3
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Yifan Zhang 
Gerrit-Comment-Date: Sun, 14 Jan 2024 06:25:56 +
Gerrit-HasComments: Yes


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2023-12-06 Thread Wang Xixu (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..

[Java] KUDU-3498 Scanner keeps alive in periodically

Kudu caches the scanner in the tablet server for continuing
reading. It will be expired if the idle time is over the defined
scanner ttl time. Sometimes the client reads a batch of data,
if the data is every large, it takes a long time to handle it.
Then the client reads the next batch using the same scanner, the
scanner will be expired even if it has sent a keep alive request.

This patch adds support for keeping a scanner alive periodically.
It uses a timer to send keep alive requests background. So,
it will never be expired when the scanner is in using.

Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
4 files changed, 201 insertions(+), 1 deletion(-)


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 3
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2023-12-06 Thread Wang Xixu (Code Review)
Hello Kudu Jenkins,

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

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

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

Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..

[Java] KUDU-3498 Scanner keeps alive in periodically

Kudu caches the scanner in the tablet server for continuing
reading. It will be expired if the idle time is over the defined
scanner ttl time. Sometimes the client reads a batch of data,
if the data is every large, it takes a long time to handle it.
Then the client reads the next batch using the same scanner, the
scanner will be expired even if it has sent a keep alive request.

This patch adds support for keeping a scanner alive periodically.
It uses a timer to send keep alive requests background. So,
it will never be expired when the scanner is in using.

Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
4 files changed, 200 insertions(+), 1 deletion(-)


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 2
Gerrit-Owner: Wang Xixu <1450306...@qq.com>
Gerrit-Reviewer: Kudu Jenkins (120)


[kudu-CR] [Java] KUDU-3498 Scanner keeps alive in periodically

2023-12-06 Thread Wang Xixu (Code Review)
Wang Xixu has uploaded this change for review. ( 
http://gerrit.cloudera.org:8080/20761


Change subject: [Java] KUDU-3498 Scanner keeps alive in periodically
..

[Java] KUDU-3498 Scanner keeps alive in periodically

Kudu caches the scanner in the tablet server for continuing
reading. It will be expired if the idle time is over the defined
scanner ttl time. Sometimes the client reads a batch of data,
if the data is every large, it takes a long time to handle it.
Then the client reads the next batch using the same scanner, the
scanner will be expired even if it has sent a keep alive request.

This patch adds support for keeping a scanner alive periodically.
It uses a timer to send keep alive requests background. So,
it will never be expired when the scanner is in using.

Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
---
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduClient.java
M java/kudu-client/src/main/java/org/apache/kudu/client/AsyncKuduScanner.java
M java/kudu-client/src/main/java/org/apache/kudu/client/KuduScanner.java
M java/kudu-client/src/test/java/org/apache/kudu/client/TestKuduClient.java
4 files changed, 197 insertions(+), 1 deletion(-)



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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I50648e987b72aead472a20ff4336e3e7f23d8e06
Gerrit-Change-Number: 20761
Gerrit-PatchSet: 1
Gerrit-Owner: Wang Xixu <1450306...@qq.com>