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

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

@Dhruba We could have master do the edit.  The edit would not then outside of 
the open transaction (unless we added new state(s)).  We'd need to make sure no 
holes between the receipt of the OPENED zk event in master and successful 
update of meta.

Problem is that the meta edits can't be aborted.  I like the idea of 
checkAndSet.  For checkAndSet to work, we have to first read meta to have a 
value to checkAndSet against?  Rather than keep a running incrementing id in 
master (which we'd have to have master shove out into meta), for the open 
transaction over on the RS, the first thing we could do is read current meta 
values to use checkAndSetting; we'd only need to read the server startcode and 
its timestamp?


                
> 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