hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "stack (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HADOOP-1509) Open HRegionServer/HClient for extension
Date Thu, 21 Jun 2007 22:48:26 GMT

    [ https://issues.apache.org/jira/browse/HADOOP-1509?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12507061
] 

stack commented on HADOOP-1509:
-------------------------------

"...perhaps exposing HClient.getOpenServers was overzealous....If there was a configuration
parameter that specified an HRegionServer extending interface, and the base impl of HClient.getHRegionConnection()
used that to initialize the server proxy, then all that would become unnecessary. What do
you think of that idea?"

Sounds like a good idea.

"I guess a similar pattern should exist for injecting specific HClient impls into HMaster
too."

Unfortunately there is no HClientInterface currently as there is a HRegionInterface (or HMasterInterface)
so it would be a bit of work and HClient is still evolving so keeping up interfaces and their
implementation will be a bit of a pain -- but its still a good idea.

"... I'm not sure how to make it accessible only to HRegionServer subclasses without making
it an inner class. I have a particular need for it where my QRegionServer perfroms scans on
its own HRegions... put perhaps there isn't a general need for that and I could remove that
from this patch. Or maybe HRegion manipulation is a likely need for HRegionServer extensions...
what do you think?"

A region server that can't manipulate regions is like a herder without his sheep.  Lets just
make HRegion public (Any future table-repair tool would need to have public access to HRegions.)

> Open HRegionServer/HClient for extension
> ----------------------------------------
>
>                 Key: HADOOP-1509
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1509
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>    Affects Versions: 0.14.0
>            Reporter: James Kennedy
>            Assignee: James Kennedy
>            Priority: Minor
>             Fix For: 0.14.0
>
>         Attachments: openForExtension-v2.patch, openForExtension.patch
>
>
> For what i'm doing I found it necessary to extend HRegionServer/HRegion/HClient for some
custom functionality.
> Following good Java practice I see that the HBase code as been programmed defensively,
keeping stuff private as much as possible.
> However, for extensibility it would be nice if the servers/client were easy to extend.
> Attached is a patch that makes several methods protected instead of private, adds getters
to fields of inner classes, and some other modifications i found were useful for some simple
extension code.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message