[ 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