You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "Mujtaba Chohan (JIRA)" <ji...@apache.org> on 2015/02/12 02:19:11 UTC
[jira] [Reopened] (PHOENIX-1634) LocalIndexSplitter prevents region
from auto split
[ https://issues.apache.org/jira/browse/PHOENIX-1634?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mujtaba Chohan reopened PHOENIX-1634:
-------------------------------------
[~rajesh23] With *HBase 0.98.10* - Using the same test scenario in which base table is declared multi-tenant without local index but local index hbase table is created upfront, base table region split never succeeds and it gets rollbacked rather than stuck in SPLITTING_NEW transition state. Thus total number of regions for base table always remain 1 after manual split or auto-split kicking in.
Here is the associated log:
{code}
regionserver.SplitRequest: Running rollback/cleanup of failed split of MYSCHEMA.MY_MULTITENANT_TABLE,,1423702967855.f08bbfbea31c1b4b60d0409f159b4f2d.; Coprocessor bypassing region MYSCHEMA.MY_MULTITENANT_TABLE,,1423702967855.f08bbfbea31c1b4b60d0409f159b4f2d. split.
java.io.IOException: Coprocessor bypassing region MYSCHEMA.MY_MULTITENANT_TABLE,,1423702967855.f08bbfbea31c1b4b60d0409f159b4f2d. split.
at org.apache.hadoop.hbase.regionserver.SplitTransaction.createDaughters(SplitTransaction.java:313)
at org.apache.hadoop.hbase.regionserver.SplitTransaction.execute(SplitTransaction.java:676)
at org.apache.hadoop.hbase.regionserver.SplitRequest.run(SplitRequest.java:85)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
{code}
[~jamestaylor]
> LocalIndexSplitter prevents region from auto split
> --------------------------------------------------
>
> Key: PHOENIX-1634
> URL: https://issues.apache.org/jira/browse/PHOENIX-1634
> Project: Phoenix
> Issue Type: Bug
> Affects Versions: 4.3
> Reporter: Mujtaba Chohan
> Assignee: rajeshbabu
> Attachments: logs.zip, performance.py
>
>
> Local index is *not* created for a multi-tenant table however empty HBase table is created in advance for local index. With data upserted in the multi-tenant table, after multiple successive auto-splits when region tries to split again on another region server, LocalIndexSplitter prevents auto-split from happening. [~rajesh23] Please see the log below. Thanks [~apurtell] and [~jamestaylor] for narrowing down this issue.
> {code}
> WARN org.apache.hadoop.hbase.regionserver.LocalIndexSplitter: Index region corresponindg to data region MYSCHEMA.MY_MULTITENANT_TABLE,,1422663910075.db3861e02b58e21b5383704375539ee5. not in the same server. So skipping the split.
> 2015-01-31 04:48:53,532 INFO org.apache.hadoop.hbase.regionserver.SplitRequest: Running rollback/cleanup of failed split of MYSCHEMA.MY_MULTITENANT_TABLE,,1422663910075.db3861e02b58e21b5383704375539ee5.; Coprocessor bypassing region MYSCHEMA.MY_MULTITENANT_TABLE,,1422663910075.db3861e02b58e21b5383704375539ee5. split.
> java.io.IOException: Coprocessor bypassing region MYSCHEMA.MY_MULTITENANT_TABLE,,1422663910075.db3861e02b58e21b5383704375539ee5. split.
> at org.apache.hadoop.hbase.regionserver.SplitTransaction.createDaughters(SplitTransaction.java:309)
> at org.apache.hadoop.hbase.regionserver.SplitTransaction.execute(SplitTransaction.java:655)
> at org.apache.hadoop.hbase.regionserver.SplitRequest.run(SplitRequest.java:84)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)