phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Josh Elser (JIRA)" <j...@apache.org>
Subject [jira] [Reopened] (PHOENIX-4940) IndexTool should be able to rebuild tenant-owned indexes
Date Mon, 11 Feb 2019 23:10:00 GMT

     [ https://issues.apache.org/jira/browse/PHOENIX-4940?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Josh Elser reopened PHOENIX-4940:
---------------------------------

Pretty sure this change is the culprit causing IndexToolIT to fail:
{noformat}
2019-02-08 23:42:13,882 ERROR [main] org.apache.phoenix.mapreduce.index.IndexTool(628): An
exception occurred while performing the indexing job: NullPointerException:  at:
java.lang.NullPointerException
	at org.apache.commons.cli.DefaultParser.handleToken(DefaultParser.java:237)
	at org.apache.commons.cli.DefaultParser.parse(DefaultParser.java:120)
	at org.apache.commons.cli.DefaultParser.parse(DefaultParser.java:76)
	at org.apache.commons.cli.DefaultParser.parse(DefaultParser.java:60)
	at org.apache.phoenix.mapreduce.index.IndexTool.parseOptions(IndexTool.java:189)
	at org.apache.phoenix.mapreduce.index.IndexTool.run(IndexTool.java:534)
	at org.apache.phoenix.end2end.IndexToolIT.runIndexTool(IndexToolIT.java:512)
	at org.apache.phoenix.end2end.IndexToolIT.runIndexTool(IndexToolIT.java:498)
	at org.apache.phoenix.end2end.IndexToolIT.testSplitIndex(IndexToolIT.java:424){noformat}
The change:
{noformat}
             // run with 50% sampling rate, split if data table more than 3 regions
-            runIndexTool(directApi, useSnapshot, schemaName, dataTableName, indexTableName,
"-sp", "50", "-spa", "3");
+            runIndexTool(directApi, useSnapshot, schemaName, dataTableName, indexTableName,
null,"-sp", "50", "-spa", "3");{noformat}
adds a null into {{additionalArgs}} which causes the commandline parser to break.

Let me put up an addendum to fix this.

> IndexTool should be able to rebuild tenant-owned indexes
> --------------------------------------------------------
>
>                 Key: PHOENIX-4940
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-4940
>             Project: Phoenix
>          Issue Type: Improvement
>    Affects Versions: 4.14.0, 5.0.0
>            Reporter: Geoffrey Jacoby
>            Assignee: Gokcen Iskender
>            Priority: Major
>             Fix For: 4.15.0, 5.1
>
>         Attachments: PHOENIX-4940-4.x.patch, PHOENIX-4940-addendum.patch
>
>          Time Spent: 1h
>  Remaining Estimate: 0h
>
> IndexTool uses global connections to lookup the indexes which it's asked to rebuild,
which means that it won't be able to see indexes owned by tenant views. We should add an optional
tenantId parameter to it that will use a tenant connection (and potentially our MapReduce
framework's tenant connection support) to allow for rebuilding those indexes as well. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message