You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Izaak Rubin (JIRA)" <ji...@apache.org> on 2008/07/03 19:51:45 UTC

[jira] Resolved: (HBASE-703) Invalid regions listed by regionserver.jsp

     [ 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.