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

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

Samarth Jain created PHOENIX-3188:
-------------------------------------

             Summary: 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


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)