[ 
https://issues.apache.org/jira/browse/HBASE-703?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Izaak Rubin resolved HBASE-703.
-------------------------------

    Resolution: Fixed

I've attached a patch (HBASE-703.patch) that fixes the problem.  

The problem originated in the HRegion splitting code.  Each HRegionServer 
maintains a collection of its daughter HRegions that are currently online.  
When an HRegion was split, the parent HRegion would be correctly closed and 
taken offline; however, the responsible HRegionServer was never informed of the 
change.  regionserver.jsp would display the HRegionServer's improperly updated 
collection of online HRegions.  The result was that all regions, even those 
that were split and offline, were displayed in the UI.  

The patch makes changes to HRegionServer.java and CompactSplitThread.java.  
There is a new method in HRegionServer, removeFromOnlineRegions(region), which 
removes the HRegion from the collection of online regions.  This method is 
called in CompactSplitThread.split().  

What changed that created this bug?  In branch/0.1, there was a notion of both 
online regions and retiring regions, and there were separate collections for 
each.  There was also a listener structure (RegionUnavailableListener) built 
into the splitting process that correctly handled the region transitions from 
online to retiring to their removal.  However, since this branch, the splitting 
code has been simplified such that the listener and "retiring" regions no 
longer exist.  Since the listener was responsible for updating the 
HRegionServer, its removal created the bug.

> Invalid regions listed by regionserver.jsp
> ------------------------------------------
>
>                 Key: HBASE-703
>                 URL: https://issues.apache.org/jira/browse/HBASE-703
>             Project: Hadoop HBase
>          Issue Type: Bug
>    Affects Versions: 0.2.0
>            Reporter: Michaela Buergle
>            Assignee: Izaak Rubin
>            Priority: Minor
>             Fix For: 0.2.0
>
>
> The region list displayed by regionserver.jsp contains regions that have 
> ceased existence due to splits.
> Example:
> Region Name   Encoded Name    Start Key       End Key
> ...
> maxentriestest,acacdk,1214292085212   732557990       acacdk  
> maxentriestest,acacdk,1214297936860   1583424516      acacdk  acqtzk
> maxentriestest,acacdk,1214293855954   1509492302      acacdk  adhlxw
> maxentriestest,acqtzk,1214297936862   1120286366      acqtzk  adhlxw
> maxentriestest,adhlxw,1214293855955   400707061       adhlxw  
> maxentriestest,adhlxw,1214299372674   2060549477      adhlxw  aelrxo
> maxentriestest,adhlxw,1214297324386   336026175       adhlxw  afpxzs
> maxentriestest,aelrxo,1214299372674   1352588233      aelrxo  afpxzs
> maxentriestest,afpxzs,1214297324387   1235754353      afpxzs  

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

Reply via email to