You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Andrew Kyle Purtell (Jira)" <ji...@apache.org> on 2022/06/12 19:47:00 UTC

[jira] [Resolved] (HBASE-4852) Tests that use RegionServer.openRegion such as TestHBaseFsck#testHBaseFsck should call openRegion synchronously

     [ https://issues.apache.org/jira/browse/HBASE-4852?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Kyle Purtell resolved HBASE-4852.
----------------------------------------
    Resolution: Incomplete

> 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
>            Priority: Major
>
> 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 was sent by Atlassian Jira
(v8.20.7#820007)