[
https://issues.apache.org/jira/browse/HBASE-13090?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14365427#comment-14365427
]
Jonathan Lawlor commented on HBASE-13090:
-----------------------------------------
A heartbeat message is very similar to the typical response from the server
with the following two exceptions:
1. The heartbeat message will be tagged with the heartbeat flag in the
ScanResponse
2. The heartbeat message may contain an empty Result array when the region on
the server has not been exhausted (i.e. there are still elements to be scanned
in the current region)
Scanners currently track their position by saving lastResult, and this
mechanism will continue to work as expected with heartbeats since heartbeats
ensure that we receive a Result back from the server before we return anything
to the application layer.
> 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
> Assignee: Jonathan Lawlor
> Attachments: HBASE-13090-v1.patch, HBASE-13090-v2.patch,
> HBASE-13090-v3.patch, HBASE-13090-v3.patch
>
>
> 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)