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

Jonathan Hsieh commented on HBASE-4852:
---------------------------------------

Reopening -- the point is that the test use the admin client and that it is 
asynchronous.  Options to make these tests more reliable is to either add some 
mechanism to allow it to get notified or poll for when it is done, or modify 
tests reaching inside the rs to grab regions (bypassing the handler queue, 
admin interface) so that the operations are synchrounous.  
                
> Tests that use RegionServer.openRegion such as TestHBaseFsck#testHBaseFsck 
> should call openRegion synchronously
> ---------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-4852
>                 URL: https://issues.apache.org/jira/browse/HBASE-4852
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>    Affects Versions: 0.92.0, 0.94.0
>            Reporter: Jonathan Hsieh
>
> Certain test cases like HBaseFsck#testHBaseFsck make calls to assign region 
> servers and then read meta.  The tests or hbck should be modified to make the 
> RegionServer.openRegion call act synchronously.
> The main issue isn't what is returned, but when.  Specifically in 
> HBaseFsck#testHBaseFsck, the first 'hbck -fix', the master makes a call to 
> the regionserver to issue an asynchronous request to open the region (which 
> adds data to meta).  The regionserver returns right away.  The next hbck call 
> will cause the master query meta again which is used to check consistency.  A 
> race is exposed -- sometimes the new meta entries are fixed before the second 
> hbck call is done (failing the test), sometimes it is not (not failing).
> The hack in HBASE-4842 introduces a slight delay which usually allows the 
> open request to finish and the meta entry to be updated before the subsequent 
> 'hbck' call.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to