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

Andrew Purtell commented on HBASE-12229:
----------------------------------------

This begs the question why assignment isn't a necessary precondition for a 
table to be online (it is of course):

{code}
@@ -643,6 +643,7 @@ public class SnapshotTestingUtils {
     }
     byte[][] splitKeys = getSplitKeys();
     util.getHBaseAdmin().createTable(htd, splitKeys);
+    util.waitUntilAllRegionsAssigned(tableName);
     waitForTableToBeOnline(util, tableName);
     assertEquals((splitKeys.length + 1) * regionReplication,
         util.getHBaseAdmin().getTableRegions(tableName).size());
{code}

bq. In short, some tests in TestRestoreSnapshot... create a table and then 
invoke SnapshotTestingUtils#waitForTableToBeOnline, but this method assumes 
that regions have been assigned by the time it's invoked

Why not fix that?

> NullPointerException in SnapshotTestingUtils
> --------------------------------------------
>
>                 Key: HBASE-12229
>                 URL: https://issues.apache.org/jira/browse/HBASE-12229
>             Project: HBase
>          Issue Type: Bug
>          Components: test
>    Affects Versions: 1.0.0, 2.0.0, 0.98.7
>            Reporter: Dima Spivak
>            Assignee: Dima Spivak
>            Priority: Minor
>         Attachments: HBASE-12229.patch, HBASE-12229_v1.patch
>
>
> I tracked down occasional flakiness in TestRestoreSnapshotFromClient to a 
> potential NPE in SnapshotTestingUtils#waitForTableToBeOnline. In short, some 
> tests in TestRestoreSnapshot... create a table and then invoke 
> SnapshotTestingUtils#waitForTableToBeOnline, but this method assumes that 
> regions have been assigned by the time it's invoked (which is not always the 
> case).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to