[ https://issues.apache.org/jira/browse/KUDU-3498?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17784661#comment-17784661 ]
ASF subversion and git services commented on KUDU-3498: ------------------------------------------------------- Commit 8644d88dae6a76c5df3595b8a5aeb13df4d6ab5c in kudu's branch refs/heads/master from xinghuayu007 [ https://gitbox.apache.org/repos/asf?p=kudu.git;h=8644d88da ] 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: I1165d96814eb4bcd5db9b5cb60403fffc5b18c81 Reviewed-on: http://gerrit.cloudera.org:8080/20282 Tested-by: Alexey Serbin <ale...@apache.org> Reviewed-by: Alexey Serbin <ale...@apache.org> > Scanner keeps alive in periodically > ----------------------------------- > > Key: KUDU-3498 > URL: https://issues.apache.org/jira/browse/KUDU-3498 > Project: Kudu > Issue Type: Improvement > Reporter: Xixu Wang > Priority: Major > > Kudu caches the scanner id 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 send a keep > alive requests. > There is an example: > /main/logs/sp/kudu/tserver/3.kudu.log.INFO.20230731-143052.2665:I0731 > 14:57:19.307266 9280 scanners.cc:280] Expiring scanner id: > a279f6e3715d437d935d0bd79788c591, of tablet 0f8f4920ba514624abc294c7c64725c1, > after 184023 ms of inactivity, which is > TTL (180000 ms). > /main/logs/sp/kudu/tserver/kudu.log.INFO.20230731-143052.2665:I0731 > 15:03:07.419070 9289 tablet_service.cc:2957] Scan: Not found: Scanner > a279f6e3715d437d935d0bd79788c591 not found (it may have expired): call > sequence id=10, remote=\{username='impala'} at host:26278 > > The client takes 9 minutes to handle a batch of data, but the scanner has > already been expired. -- This message was sent by Atlassian Jira (v8.20.10#820010)