In assigning a region, assignment manager forces the region state offline if it is not. This could cause double assignment, for example, if the region is already assigned and in the Open state, you should not just change it's state to Offline, and assign it again.
I think this could be the root cause for all double assignments IF the region state is reliable.
After this loophole is closed, TestHBaseFsck should come up a different way to create some assignment inconsistencies, for example, calling region server to open a region directly.
|Status||Open [ 1 ]||Patch Available [ 10002 ]|
|Hadoop Flags||Reviewed [ 10343 ]|
|Status||Patch Available [ 10002 ]||Resolved [ 5 ]|
|Resolution||Fixed [ 1 ]|
|Fix Version/s||0.95.0 [ 12324094 ]|
|Fix Version/s||0.96.0 [ 12320040 ]|
|Status||Resolved [ 5 ]||Closed [ 6 ]|
|Transition||Time In Source Status||Execution Times||Last Executer||Last Execution Date|
|1d 2h 38m||2||Jimmy Xiang||19/Oct/12 22:19|
|60d 2h 32m||3||Jimmy Xiang||19/Oct/12 22:19|
|6h 39m||1||Jimmy Xiang||20/Oct/12 04:59|
|338d 14h 32m||1||stack||23/Sep/13 19:31|