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

stack commented on HBASE-4497:
------------------------------

So if doesn't need to be monotonically increasing -- it'd be nice but not 
necessary and monotonically increasing id for a cluster is a bit of a pain to 
do -- how about we do this (the below this comes of Todd input over in 4507 and 
from the back and forth above):

>From here on out, every edit of meta will also update a new column, 
>info:editid.  This info:editid will hold a UUID generated by the client making 
>the edit.

On open of a region, the open runs as it currently does with following 
additions:

+ Just after the regionserver has moved the znode to OPENING the first time 
confirming it 'owns' the region, the RS reads the current info:editid value.
+ After opening the region, when we go to update the regions location in meta, 
the RS will do a checkAndPut where the check checks the info:editid value.

Hows that?
                
> If region opening fails after updating META HBCK reports it as inconsistent 
> and scanning the region throws NSRE
> ---------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-4497
>                 URL: https://issues.apache.org/jira/browse/HBASE-4497
>             Project: HBase
>          Issue Type: Bug
>            Reporter: ramkrishna.s.vasudevan
>            Priority: Critical
>
> As per the discussion in the mail chain "HBCK reporting of possible mismatch 
> in RS assignment" this JIRA is created.
> Consider two RS-> RS1 and RS2.
> A region tries to open in RS1. But it takes a while.  The RS1 has still not 
> updated meta and transitioned the node from OPENING to OPENED
> So timeout assigns the region to RS2.  RS2 successfully updates the META and 
> opens the region.
> Now RS1 tries to act on the region by first updating the META and then 
> transiting the node to OPENING to OPENED.
> RS1 transiting the node to OPENING to OPENED will fail.  But the META entry 
> will have RS1 as the latest.
> Now HBCK reports this as an inconsistency and if we try to scan the Region we 
> get NotServingRegionException.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to