hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "stack (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-13984) Add option to allow caller to know the heartbeat and scanner position when scanner timeout
Date Wed, 01 Jul 2015 18:37:05 GMT

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

stack commented on HBASE-13984:
-------------------------------

[~jonathan.lawlor] FYI

So, idea is to pass back in the heartbeat, the 'next' row that would be encountered so the
Scan can be picked up later at this point?

bq. 1. Allow client set a flag whether pass the heartbeat (a fake row) to the caller (via
ResultScanner next)

Rather than a global config in hbase Configuration, why is this not an option you'd specify
on Scan? (What is an 'explicit' heartbeat vs a heartbeat?)

It seems entangled with client not taking partial results? Does it have to be? Could someone
want the next row AND want partial results?

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

+  /**
+   * @return Return the next cell when the most recent RPC response was a heartbeat message
and
+   *         the server is only allowed break at row boundary. If the next cell is beyond
the
+   *         scan range, null will be returned.
+   */
+  protected Cell getNextCell() {
+    return nextCell;
+  }
+
+  protected void setNextCell(Cell nextCell) {
+    this.nextCell = nextCell;
+  }

I think it important we get the flagging clean and clear so folks can easily discover the
existence of this new facility. Would also like to make it so we can implement it w/o tarnishing
meaning of current flags.

Thanks [~heliangliang]





> 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)

Mime
View raw message