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

Jonathan Hsieh commented on HBASE-7778:
---------------------------------------

While I care about the test passing, I care more about understanding why it 
passes and making it easier for future folks to understand why.  In this case, 
I think it was a bug -- the last test shouldn't be removed but instead the 
boolean was inverted.  I've renamed the noWait variable and I think it makes it 
much more obvious that that was the problem.
                
> [snapshot 130201 merge] Tests with sleep after minicluster shutdown fail due 
> to interrupt flag.
> -----------------------------------------------------------------------------------------------
>
>                 Key: HBASE-7778
>                 URL: https://issues.apache.org/jira/browse/HBASE-7778
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Jonathan Hsieh
>         Attachments: hbase-7778.patch
>
>
> Something in the merge has set the interrupted flag on the main test threads 
> of TestReplicationDisabledinactivePeer, TestRestartCluster, and 
> TestCatalogTrackerOnCluster.  
> These unacceptable hacks make the tests run and pass: 
> {code}
> diff --git 
> a/hbase-server/src/test/java/org/apache/hadoop/hbase/catalog/TestCatalogTrackerOnCluster.java
>  b/hbase-server/src/test/java/or
> index f3e57d6..a8d2ef7 100644
> --- 
> a/hbase-server/src/test/java/org/apache/hadoop/hbase/catalog/TestCatalogTrackerOnCluster.java
> +++ 
> b/hbase-server/src/test/java/org/apache/hadoop/hbase/catalog/TestCatalogTrackerOnCluster.java
> @@ -47,6 +47,7 @@ public class TestCatalogTrackerOnCluster {
>      // Shutdown hbase.
>      UTIL.shutdownMiniHBaseCluster();
>      // Give the various ZKWatchers some time to settle their affairs.
> +    Thread.interrupted(); // HACK clear interrupt state.
>      Thread.sleep(1000);
>  
>      // Mess with the root location in the running zk.  Set it to be nonsense.
> diff --git 
> a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestRestartCluster.java
>  b/hbase-server/src/test/java/org/apache/h
> index 15225e1..9f7f526 100644
> --- 
> a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestRestartCluster.java
> +++ 
> b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestRestartCluster.java
> @@ -108,6 +108,7 @@ public class TestRestartCluster {
>      UTIL.shutdownMiniHBaseCluster();
>  
>      LOG.info("\n\nSleeping a bit");
> +    Thread.interrupted(); // HACK clear interrupt state.
>      Thread.sleep(2000);
>  
>      LOG.info("\n\nStarting cluster the second time");
> diff --git 
> a/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestReplicationDisableInactivePeer.java
>  b/hbase-server/src/t
> index b089fbe..8162f4b 100644
> --- 
> a/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestReplicationDisableInactivePeer.java
> +++ 
> b/hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestReplicationDisableInactivePeer.java
> @@ -50,6 +50,7 @@ public class TestReplicationDisableInactivePeer extends 
> TestReplicationBase {
>      // enabling and shutdown the peer
>      admin.enablePeer("2");
>      utility2.shutdownMiniHBaseCluster();
> +    Thread.interrupted(); // HACK clear interrupted flag.
>  
>      byte[] rowkey = Bytes.toBytes("disable inactive peer");
>      Put put = new Put(rowkey);
> {code}
> On the snapshot branch and on the trunk branch before the merge, these tests 
> passed. Need to figure out how they combination caused this behavior change.

--
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