You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "James Taylor (JIRA)" <ji...@apache.org> on 2016/08/17 01:53:20 UTC

[jira] [Comment Edited] (PHOENIX-3188) Making renew leases of scanners more resilient

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

James Taylor edited comment on PHOENIX-3188 at 8/17/16 1:52 AM:
----------------------------------------------------------------

Moves ScanningResultIterator into hbase package so it can access protected member variables and adds  getScannerId() method.


was (Author: jamestaylor):
Moves ScanningResultIterator into hbase package so it can access protected member variables.

> Making renew leases of scanners more resilient
> ----------------------------------------------
>
>                 Key: PHOENIX-3188
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-3188
>             Project: Phoenix
>          Issue Type: Improvement
>            Reporter: Samarth Jain
>         Attachments: PHOENIX-3188_hack.patch
>
>
> For renewing scanner leases, we need to perform an RPC per lease renewal. It could happen that under load, these calls won't be picked up by region handler threads soon enough which could cause queries to fail. There are a couple of ways to solve this problem:
> 1) Issue renew lease calls at a higher priority. This essentially causes a different thread pool to be used on the region servers. One such example is the metadata and index updates calls we make. This would scale well unless these special thread pools themselves get saturated with requests.
> 2) Batch up the the renewLease rpc calls. If HBase is able to provide us scanner names and ids, then we can potentially renew leases for multiple scanners by batching them up in one rpc. This would entail changes in both client and server side of HBase. Client side - to expose scanner name. Server side - to expose renewLease call on a scanner given a scanner name/id. 
> We still need to fix renewing leases for non-aggregate queries though. See PHOENIX-1751



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