You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@phoenix.apache.org by gj...@apache.org on 2019/02/06 21:55:04 UTC
[phoenix] branch 4.x-HBase-1.3 updated: PHOENIX-5111: Null Pointer
exception fix in index tool due to outputpath being null when direct option
is supplied
This is an automated email from the ASF dual-hosted git repository.
gjacoby pushed a commit to branch 4.x-HBase-1.3
in repository https://gitbox.apache.org/repos/asf/phoenix.git
The following commit(s) were added to refs/heads/4.x-HBase-1.3 by this push:
new c8f4454 PHOENIX-5111: Null Pointer exception fix in index tool due to outputpath being null when direct option is supplied
c8f4454 is described below
commit c8f44549a0401283d4147413f2c36afa0cd7a9f6
Author: Gokcen Iskender <gi...@salesforce.com>
AuthorDate: Mon Jan 28 13:16:44 2019 -0800
PHOENIX-5111: Null Pointer exception fix in index tool due to outputpath being null when direct option is supplied
Signed-off-by: Geoffrey Jacoby <gj...@apache.org>
---
.../java/org/apache/phoenix/mapreduce/index/IndexTool.java | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/mapreduce/index/IndexTool.java b/phoenix-core/src/main/java/org/apache/phoenix/mapreduce/index/IndexTool.java
index f2f4cdb..a4c82be 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/mapreduce/index/IndexTool.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/mapreduce/index/IndexTool.java
@@ -249,7 +249,7 @@ public class IndexTool extends Configured implements Tool {
if (isPartialBuild) {
return configureJobForPartialBuild(schemaName, dataTable);
} else {
- return configureJobForAysncIndex(schemaName, indexTable, dataTable, useDirectApi, useSnapshot);
+ return configureJobForAsyncIndex(schemaName, indexTable, dataTable, useDirectApi, useSnapshot);
}
}
@@ -362,7 +362,7 @@ public class IndexTool extends Configured implements Tool {
}
- private Job configureJobForAysncIndex(String schemaName, String indexTable, String dataTable, boolean useDirectApi, boolean useSnapshot)
+ private Job configureJobForAsyncIndex(String schemaName, String indexTable, String dataTable, boolean useDirectApi, boolean useSnapshot)
throws Exception {
final String qDataTable = SchemaUtil.getQualifiedTableName(schemaName, dataTable);
final String qIndexTable;
@@ -409,14 +409,16 @@ public class IndexTool extends Configured implements Tool {
final List<ColumnInfo> columnMetadataList =
PhoenixRuntime.generateColumnInfo(connection, qIndexTable, indexColumns);
ColumnInfoToStringEncoderDecoder.encode(configuration, columnMetadataList);
- fs = outputPath.getFileSystem(configuration);
- fs.delete(outputPath, true);
-
+
final String jobName = String.format(INDEX_JOB_NAME_TEMPLATE, schemaName, dataTable, indexTable);
final Job job = Job.getInstance(configuration, jobName);
job.setJarByClass(IndexTool.class);
job.setMapOutputKeyClass(ImmutableBytesWritable.class);
- FileOutputFormat.setOutputPath(job, outputPath);
+ if (outputPath != null) {
+ fs = outputPath.getFileSystem(configuration);
+ fs.delete(outputPath, true);
+ FileOutputFormat.setOutputPath(job, outputPath);
+ }
if (!useSnapshot) {
PhoenixMapReduceUtil.setInput(job, PhoenixIndexDBWritable.class, qDataTable,