[ 
https://issues.apache.org/jira/browse/HBASE-13090?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14343108#comment-14343108
 ] 

Eshcar Hillel commented on HBASE-13090:
---------------------------------------

In addition to a timer, or as an alternative to it, one can consider capping 
prefetched data at the server side by counting the number of rows scanned at 
each prefetch step. A capping factor limits the max number of rows to be 
scanned before returning the result to the client. 
This way when the limit is exceeded the server sends whatever data it gathered 
so far. If no data was found it only sends a heartbeat. When finished scanning 
the region signal that it is exhausted. 

At the client side, the scanner continuos to scan agains the current region 
until it is exhausted.


> Progress heartbeats for long running scanners
> ---------------------------------------------
>
>                 Key: HBASE-13090
>                 URL: https://issues.apache.org/jira/browse/HBASE-13090
>             Project: HBase
>          Issue Type: New Feature
>            Reporter: Andrew Purtell
>
> It can be necessary to set very long timeouts for clients that issue scans 
> over large regions when all data in the region might be filtered out 
> depending on scan criteria. This is a usability concern because it can be 
> hard to identify what worst case timeout to use until scans are 
> occasionally/intermittently failing in production, depending on variable scan 
> criteria. It would be better if the client-server scan protocol can send back 
> periodic progress heartbeats to clients as long as server scanners are alive 
> and making progress.
> This is related but orthogonal to streaming scan (HBASE-13071). 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to