[
https://issues.apache.org/jira/browse/HBASE-543?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12658900#action_12658900
]
stack commented on HBASE-543:
-----------------------------
Understood. Please check it out. If you think it good, we can commit but
would be good to avoid fellas in the field finding the deadlock. My other
concern is that this lock makes the master effectively single-threaded.
> A region's state is kept in several places in the master opening the
> possibility for race conditions
> ----------------------------------------------------------------------------------------------------
>
> Key: HBASE-543
> URL: https://issues.apache.org/jira/browse/HBASE-543
> Project: Hadoop HBase
> Issue Type: Bug
> Components: master
> Affects Versions: 0.1.0, 0.1.1, 0.2.0
> Reporter: Jim Kellerman
> Assignee: Jim Kellerman
> Fix For: 0.19.0
>
> Attachments: 543.patch, 543.patch, 543.patch, 543.patch-4,
> 543.patch-5, apurtell-HMaster-20081223-1.log.zip, recent-changes.patch,
> regionstate.txt
>
>
> A region's state exists in multiple maps in the RegionManager:
> unassignedRegions, pendingRegions, regionsToClose, closingRegions,
> regionsToDelete, etc.
> One of these race conditions was found in HBASE-534.
> For HBase-0.1.x, we should just patch the holes we find.
> The ultimate solution (which requires a lot of changes in HMaster) should be
> applied to HBase trunk.
> Proposed solution:
> Create a class that encapsulates a region's state and provide synchronized
> access to the class that validates state changes.
> There should be a single structure that holds regions in these transitional
> states and it should be a synchronized collection of some kind.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.