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

Alicia Ying Shu commented on PHOENIX-1356:
------------------------------------------

[~rajesh23] We can keep my original fix using Admin for the following reasons:

1) The Meta only records the beginning state and finished state of a split. 
There is no intermediate state recorded. So before the split completes, the 
number of regions will be 4, after the split the number of regions will be 4+i. 
We can use Admin to get this info. 
2) There will be side-effect using MetaReader#getTableRegions(CatalogTracker 
catalogTracker,TableName tableName, final boolean excludeOfflinedSplitParents) 
setting excludeOfflinedSplitParents=false. After a split finished, the Parent 
region info would stay there until CatalogJanitor removes it. During this 
period, the number of region is 4+i+1. But the split already finished. The test 
may waiting longer than necessary inside the loop (regionNumber != 4+i). If 
using Admin, we will exit the loop once the split finishes. 
3) MetaReader is private. Better not calling it directly.

Thanks.

> LocalIndexIT.testLocalIndexScanAfterRegionSplit() failed at distributed 
> cluster when getting regions
> ----------------------------------------------------------------------------------------------------
>
>                 Key: PHOENIX-1356
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-1356
>             Project: Phoenix
>          Issue Type: Bug
>            Reporter: Alicia Ying Shu
>            Assignee: Alicia Ying Shu
>             Fix For: 5.0.0, 4.2
>
>         Attachments: PHOENIX-1356-4.0.patch, PHOENIX-1356.patch
>
>
> testLocalIndexScanAfterRegionSplit can raise exception when running in 
> distributed mode :
> testLocalIndexScanAfterRegionSplit(org.apache.phoenix.end2end.index.LocalIndexIT)
> MainThread|java.lang.RuntimeException: 
> org.apache.hadoop.hbase.DistributedHBaseCluster@f497380 not an instance of 
> org.apache.hadoop.hbase.MiniHBaseCluster
> org.apache.hadoop.hbase.HBaseTestingUtility.getMiniHBaseCluster(HBaseTestingUtility.java:938)
> org.apache.hadoop.hbase.HBaseTestingUtility.getHBaseCluster(HBaseTestingUtility.java:2500)
> org.apache.phoenix.end2end.index.LocalIndexIT.testLocalIndexScanAfterRegionSplit(LocalIndexIT.java:627)



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

Reply via email to