[
https://issues.apache.org/jira/browse/HBASE-2058?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andrew Purtell resolved HBASE-2058.
-----------------------------------
Resolution: Later
I suspect that given the available option of external coprocessor hosts
(HBASE-4047), which enables things like resource reservation and limits via
cgroups or similar OS-level facilities, there will never be sufficient impetus
to undertake the difficult and research-y work described in this issue. But,
marking as later as opposed to closing.
> Coprocessors: CPU and memory limit policy enforcment via runtime weaving
> ------------------------------------------------------------------------
>
> Key: HBASE-2058
> URL: https://issues.apache.org/jira/browse/HBASE-2058
> Project: HBase
> Issue Type: Improvement
> Components: coprocessors
> Reporter: Andrew Purtell
>
> Use the ASM bytecode analysis and rewriting engine to impose some constraints
> on CPU and memory use. This is middle ground between arbitrary function and a
> locked down language.
> We will be given arbitrary bytecode input. It is acceptable to reject a class
> and abort coprocessor loading if it defies analysis at load time such that we
> have insufficient confidence about the result.
> Wrap allocations to simply disallow large allocations. Hook or add finalizers
> to keep a running tally of aggregate heap charge. Disallow allocation beyond
> policy limit.
> Weave CPU usage tracking into loop headers. Throw an uncatchable exception if
> time limits prescribed by policy are exceeded.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira