[
https://issues.apache.org/jira/browse/HBASE-17732?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Appy updated HBASE-17732:
-------------------------
Description:
Adding template for coprocessor type to CoprocessorEnvironment will:
- allow us to load only relevant coprocessors in hosts (right now each type of
host loads all types of coprocs and it's only during execOperation that it
checks if the coproc is of correct type i.e. XCoprocessorHost will load
XObserver, YObserver, and all others, and will check in execOperation if
{{coproc instanceOf XObserver}} and ignore the rest).
- allow sharing of a bunch functions/classes which are currently 99% duplicate
of each other. For eg. CoprocessorOperations, CoprocessorOperationWithResult,
execOperations().
Here's a more detailed design doc:
https://docs.google.com/document/d/1PBEnaqyJeiHvALFswF_yl81-rOpQmZuixCDua-LT9X4/edit
was:
Adding template for coprocessor type to CoprocessorEnvironment will:
- get rid of 'instanceOf' checks we do in various coprocessor hosts
- allow us to load only relevant coprocessors in hosts (right now i think each
host loads all coprocs and it's only during execOperation that it checks if the
coproc is of correct type ie XXCoprocessorHost will load XXObserver,
YYObserver, and all others, and in will check in execOperation if coproc is of
type XXObserver and ignore the rest).
- allow sharing of a bunch functions/classes which are currently 99% duplicate
of each other. For eg. CoprocessorOperations, CoprocessorOperationWithResult,
execOperations().
Here's a more detailed design doc:
https://docs.google.com/document/d/1PBEnaqyJeiHvALFswF_yl81-rOpQmZuixCDua-LT9X4/edit
> Coprocessor Design Improvements
> -------------------------------
>
> Key: HBASE-17732
> URL: https://issues.apache.org/jira/browse/HBASE-17732
> Project: HBase
> Issue Type: Improvement
> Reporter: Appy
> Assignee: Appy
> Attachments: HBASE-17732.master.001.patch,
> HBASE-17732.master.002.patch, HBASE-17732.master.003.patch
>
>
> Adding template for coprocessor type to CoprocessorEnvironment will:
> - allow us to load only relevant coprocessors in hosts (right now each type
> of host loads all types of coprocs and it's only during execOperation that it
> checks if the coproc is of correct type i.e. XCoprocessorHost will load
> XObserver, YObserver, and all others, and will check in execOperation if
> {{coproc instanceOf XObserver}} and ignore the rest).
> - allow sharing of a bunch functions/classes which are currently 99%
> duplicate of each other. For eg. CoprocessorOperations,
> CoprocessorOperationWithResult, execOperations().
> Here's a more detailed design doc:
> https://docs.google.com/document/d/1PBEnaqyJeiHvALFswF_yl81-rOpQmZuixCDua-LT9X4/edit
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)