You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "ramkrishna.s.vasudevan (JIRA)" <ji...@apache.org> on 2011/09/06 08:14:10 UTC

[jira] [Commented] (HBASE-4153) Handle RegionAlreadyInTransitionException in AssignmentManager

    [ https://issues.apache.org/jira/browse/HBASE-4153?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13097755#comment-13097755 ] 

ramkrishna.s.vasudevan commented on HBASE-4153:
-----------------------------------------------

I was looking into this issue.  
One thing just wanted to make myself clear, when HBASE-3741 was committed 
{code}
    if (this.regionsInTransitionInRS.contains(region.getEncodedNameAsBytes())) {
      throw new RegionAlreadyInTransitionException("open", region.getEncodedName());
    }
    LOG.info("Received request to open region: " +
      region.getRegionNameAsString());
{code}
But now we have a case where 
{code}
    if (this.regionsInTransitionInRS.contains(region.getEncodedNameAsBytes())) {
      throw new RegionAlreadyInTransitionException("open", region.getEncodedName());
    }
    HRegion onlineRegion = this.getFromOnlineRegions(region.getEncodedName());
    if (null != onlineRegion) {
      LOG.warn("Attempted open of " + region.getEncodedName()
          + " but already online on this server");
      return RegionOpeningState.ALREADY_OPENED;
    }
{code}
Now ALREADY_OPENED case is getting handled in the AssigmentManager.assign currently.
Pls provide your suggestions so that i can be more clear on the actual issue that we are trying to address here and proceed further.
Correct me if my analysis is wrong.


> Handle RegionAlreadyInTransitionException in AssignmentManager
> --------------------------------------------------------------
>
>                 Key: HBASE-4153
>                 URL: https://issues.apache.org/jira/browse/HBASE-4153
>             Project: HBase
>          Issue Type: Improvement
>    Affects Versions: 0.92.0
>            Reporter: Jean-Daniel Cryans
>             Fix For: 0.92.0
>
>
> Comment from Stack over in HBASE-3741:
> {quote}
> Question: Looking at this patch again, if we throw a RegionAlreadyInTransitionException, won't we just assign the region elsewhere though RegionAlreadyInTransitionException in at least one case here is saying that the region is already open on this regionserver?
> {quote}
> Indeed looking at the code it's going to be handled the same way other exceptions are. Need to add special cases for assign and unassign.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira