Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Plain View
HBase >> mail # user >> A confusion of RegionCoprocessorEnvironment.getReion() method

yonghu 2012-04-10, 09:30
Copy link to this message
Re: A confusion of RegionCoprocessorEnvironment.getReion() method
Each and every HRegion on a given region server will have it's own
distinct instance of your configured RegionObserver class.
RegionCoprocessorEnvironment.getRegion() returns a reference to the
HRegion containing the current coprocessor instance.

The hierarchy is essentially:

\_  HRegion
        \_ RegionCoprocessorHost
             \_  <your RegionObserver instance>

(repeated for each HRegion).

This blog post by Mingjie may help explain things a bit more:

On Tue, Apr 10, 2012 at 2:30 AM, yonghu <[EMAIL PROTECTED]> wrote:
> Hello,
> The description of this method is " /** @return the region associated
> with this coprocessor */" and the return value is an HRegion instance.
> If I configure the region-coprocessor class in hbase-site.xml.  It
> means that this coprocessor will be applied to every HRegion which
> resides on this Region Server (if I understand right).  Why this
> method only return one HRgion instance not a list of HRgion
> instances?Suppose that a region server has two HRegions, one is for
> table 'test1', the other is for table 'test2'.  Which HRgion instance
> will be returned if I call RegionCoprocessorEnvironment.getReion()?
> Thanks!
> Yong
yonghu 2012-04-10, 16:20