[ 
https://issues.apache.org/jira/browse/HBASE-12731?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Purtell updated HBASE-12731:
-----------------------------------
    Attachment: HBASE-12731.patch

Parking an untested patch.

What this does is extend RegionLoadStats to carry heap occupancy percentage, 
ExponentialClientBackoffPolicy to factor in heap occupancy once it exceeds a 
low water mark, pegging backoff to max backoff after it exceeds a high water 
mark. We repurpose the existing HeapMemoryManager chore to sample heap 
occupancy. If heap occupancy exceeds the low water mark the chore switches from 
its normal sleep period to a short sleep period so it can monitor occupancy 
closely. Finally, in order for RPC code to get the sampled heap occupancy value 
we add a method to RegionServerServices that exposes the server's 
HeapMemoryManager.

> Heap occupancy based client pushback
> ------------------------------------
>
>                 Key: HBASE-12731
>                 URL: https://issues.apache.org/jira/browse/HBASE-12731
>             Project: HBase
>          Issue Type: New Feature
>            Reporter: Andrew Purtell
>            Assignee: Andrew Purtell
>         Attachments: HBASE-12731.patch
>
>
> If the heap occupancy of a RegionServer is beyond a configurable high water 
> mark (suggestions: 95%, 98%) then we should reject all user RPCs and only 
> allow administrative RPCs until occupancy has dropped below a configurable 
> low water mark (suggestions: 92%). 
> Implement building on the HBASE-5162 changes.
> It might be expensive to check heap occupancy, in which case we can sample it 
> periodically with a chore and use the last known value in pushback 
> calculations. 



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

Reply via email to