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