You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Andrew Purtell (JIRA)" <ji...@apache.org> on 2015/09/26 19:17:04 UTC

[jira] [Comment Edited] (HBASE-13984) Add option to allow caller to know the heartbeat and scanner position when scanner timeout

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

Andrew Purtell edited comment on HBASE-13984 at 9/26/15 5:16 PM:
-----------------------------------------------------------------

This looks like an unrelated fix, let's use a separate issue for it:
{code}
diff --git a/hbase-protocol/pom.xml b/hbase-protocol/pom.xml
index 20ea50c..274e185 100644
--- a/hbase-protocol/pom.xml
+++ b/hbase-protocol/pom.xml
@@ -193,6 +193,7 @@
                           <include>RowProcessor.proto</include>
                           <include>RPC.proto</include>
                           <include>SecureBulkLoad.proto</include>
+                          <include>Snapshot.proto</include>
                           <include>Tracing.proto</include>
                           <include>VisibilityLabels.proto</include>
                           <include>WAL.proto</include>
{code}

I don't see in the unit test changes where the new feature is tested. Where do we get the "heartbeat cell" from a Result and use it to make a new scan? Did I miss it? Edit: To clarify, I was looking for something where we set up some test data, run a scan without using the new feature (I guess not using heartbeats at all), count the results, then do it again with 'heartbeat cells' and timeouts and creating a new scan with startRow set appropriately, count the accumulated results again, finally confirm everything matches up. 


was (Author: apurtell):
This looks like an unrelated fix, let's use a separate issue for it:
{code}
diff --git a/hbase-protocol/pom.xml b/hbase-protocol/pom.xml
index 20ea50c..274e185 100644
--- a/hbase-protocol/pom.xml
+++ b/hbase-protocol/pom.xml
@@ -193,6 +193,7 @@
                           <include>RowProcessor.proto</include>
                           <include>RPC.proto</include>
                           <include>SecureBulkLoad.proto</include>
+                          <include>Snapshot.proto</include>
                           <include>Tracing.proto</include>
                           <include>VisibilityLabels.proto</include>
                           <include>WAL.proto</include>
{code}

I don't see in the unit test changes where the new feature is tested. Where do we get the "heartbeat cell" from a Result and use it to make a new scan? Did I miss it?

> 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-13984-V2.diff, HBASE-13984-V3.diff, HBASE-13984-V3.patch, HBASE-13984-V4.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 result contains the scanner position) 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)