[
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