You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@hbase.apache.org by Ted Yu <yu...@gmail.com> on 2016/12/29 16:10:03 UTC

Re: hbase.regionserver.impl no longer available

Can you show your code involving usage of hbase.regionserver.impl ?

Please also show the full stack trace of NPE.

A quick check across 0.98, branch-1 and master doesn't reveal difference
around this config.

Cheers

On Thu, Dec 29, 2016 at 7:51 AM, George Forman <ge...@hotmail.com>
wrote:

> Hi,
>
> I have upgraded from cdh4.x to cdh5.6.0. We use HBase RegionServer
> coprocessor (observer model) for prepost for our data analysis. The
> coprocessor uses our proprietory statistics collection, as well as,
> implementing our JMX interface to retrieve those stats. To do this we have
> leveraged  hbase.regionserver.impl by providing our extension of
> HRegioinServer. eg: public class MyStatsHRegionServer extends HRegionServer
> {...}
>
>
>
> We are getting a NPE when the region server executes the coprocessor
> because I can't specify the extended class via hbase.regionserver.impl. I
> have looked around at hbase classes and can't find anything obvious that is
> a replacement. Does anyone have a suggestion on how to resolve this problem?
>
>
> Thanks
>
>

Re: hbase.regionserver.impl no longer available

Posted by George Forman <ge...@hotmail.com>.
Hi Ted,

I need to consult management on whether I am able to publish the code.

I might be able to publish a snippet of the code so I can get assistance.

thx

________________________________
From: Ted Yu <yu...@gmail.com>
Sent: Thursday, December 29, 2016 4:10 PM
To: user@hbase.apache.org
Subject: Re: hbase.regionserver.impl no longer available

Can you show your code involving usage of hbase.regionserver.impl ?

Please also show the full stack trace of NPE.

A quick check across 0.98, branch-1 and master doesn't reveal difference
around this config.

Cheers

On Thu, Dec 29, 2016 at 7:51 AM, George Forman <ge...@hotmail.com>
wrote:

> Hi,
>
> I have upgraded from cdh4.x to cdh5.6.0. We use HBase RegionServer
> coprocessor (observer model) for prepost for our data analysis. The
> coprocessor uses our proprietory statistics collection, as well as,
> implementing our JMX interface to retrieve those stats. To do this we have
> leveraged  hbase.regionserver.impl by providing our extension of
> HRegioinServer. eg: public class MyStatsHRegionServer extends HRegionServer
> {...}
>
>
>
> We are getting a NPE when the region server executes the coprocessor
> because I can't specify the extended class via hbase.regionserver.impl. I
> have looked around at hbase classes and can't find anything obvious that is
> a replacement. Does anyone have a suggestion on how to resolve this problem?
>
>
> Thanks
>
>

Re: hbase.regionserver.impl no longer available

Posted by George Forman <ge...@hotmail.com>.
Hi,


I was able to determine the cause of the problem. Upgrading from cdh4.x to cdh5.x, hbase region server starts up the coprocessors in a separate JVM. Therefore, the code  extending HRegionServer which creates a singleton has two separate copies of the class object. In cdh4.x this wasn't the case.


I have moved the code into extended BaseRegionObserver by overriding start/stop methods. I can see the start method being called multiple times. I have synchronized this code as well as only allowing it to execute once.


I have also implemented the stop method in BaseRegionObserver. During shutdown of region server I see it being called multiple times as well. I only allow the code to execute once.


I am concerned about the stop method. In normal region server operation (not shutdown condition), can the stop method in BaseRegionObserver be executed?  If so, what circumstance can this happen?


Thanks,

________________________________
From: Ted Yu <yu...@gmail.com>
Sent: Thursday, December 29, 2016 4:10 PM
To: user@hbase.apache.org
Subject: Re: hbase.regionserver.impl no longer available

Can you show your code involving usage of hbase.regionserver.impl ?

Please also show the full stack trace of NPE.

A quick check across 0.98, branch-1 and master doesn't reveal difference
around this config.

Cheers

On Thu, Dec 29, 2016 at 7:51 AM, George Forman <ge...@hotmail.com>
wrote:

> Hi,
>
> I have upgraded from cdh4.x to cdh5.6.0. We use HBase RegionServer
> coprocessor (observer model) for prepost for our data analysis. The
> coprocessor uses our proprietory statistics collection, as well as,
> implementing our JMX interface to retrieve those stats. To do this we have
> leveraged  hbase.regionserver.impl by providing our extension of
> HRegioinServer. eg: public class MyStatsHRegionServer extends HRegionServer
> {...}
>
>
>
> We are getting a NPE when the region server executes the coprocessor
> because I can't specify the extended class via hbase.regionserver.impl. I
> have looked around at hbase classes and can't find anything obvious that is
> a replacement. Does anyone have a suggestion on how to resolve this problem?
>
>
> Thanks
>
>