[ https://issues.apache.org/jira/browse/HBASE-13984?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14613045#comment-14613045 ]
He Liangliang commented on HBASE-13984: --------------------------------------- >> why is this not an option you'd specify on Scan? It's flexible to put into scan, includes the timeout limit. Explicit means the heartbeat is visible to the caller instead of transparent. >> It seems entangled with client not taking partial results? It makes sense, I'll update this. >> These 'general' additions made just for the exotic case of an heartbeat >> carrying the next Cell from which to carry on the Scan seems like too much >> exposure on a pivotal class like ScannerCallable We need to read this 'next' in ClientScanner, similar to heartbeatMessage filed in ScannerCallable. Or in another word, it's piggybacked data in a heartbeat message, so we can wrap heartbeatMessage flag and next together into an object and put it in ScannerCallable? > Add option to allow caller to know the heartbeat and scanner position when > scanner timeout > ------------------------------------------------------------------------------------------ > > Key: HBASE-13984 > URL: https://issues.apache.org/jira/browse/HBASE-13984 > Project: HBase > Issue Type: Improvement > Components: Scanners > Reporter: He Liangliang > Assignee: He Liangliang > Attachments: HBASE-13984-V1.diff > > > HBASE-13090 introduced scanner heartbeat. However, there are still some > limitations (see HBASE-13215). In some application, for example, an operation > access hbase to scan table data, and there is strict limit that this call > must return in a fixed interval. At the same time, this call is stateless, so > the call must return the next position to continue the scan. This is typical > use case for online applications. > Based on this requirement, some improvements are proposed: > 1. Allow client set a flag whether pass the heartbeat (a fake row) to the > caller (via ResultScanner next) > 2. Allow the client pass a timeout to the server, which can override the > server side default value > 3. When requested by the client, the server peek the next cell and return to > the client in the heartbeat message -- This message was sent by Atlassian JIRA (v6.3.4#6332)