Lars Hofhansl created PHOENIX-1751:
--------------------------------------

             Summary: Perform aggregations, sorting, etc, in the preScannerNext 
instead of postScannerOpen
                 Key: PHOENIX-1751
                 URL: https://issues.apache.org/jira/browse/PHOENIX-1751
             Project: Phoenix
          Issue Type: Bug
            Reporter: Lars Hofhansl


HBase retains a lease for every scanner. Then lease expires the scan will no 
longer (be allowed to) work. The leases guard against the client going away, 
and allow cleaning up resources if that happens.

At various points HBase "suspends" the lease while the region server are 
working on behalf of this scanner, so that the lease won't expire even though 
the server is working on it.
HBase does that during the scanning process. Crucially it suspends the leaser 
after the scanner is opened, before next() is issued on it.
The outcome of all this is that Phoenix executes aggregates, sorts, etc, with 
the lease in place, and hence if these take a bit the lease can expire even 
though the server was working on it.

Phoenix should do this work in preScannerNext, being careful that the 
precalculation is only performed once.

I'll attach a sample patch soon.



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

Reply via email to