diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/SparkCubeHFile.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/SparkCubeHFile.java index e2d43ba1c..a88b9b457 100644 --- a/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/SparkCubeHFile.java +++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hbase/steps/SparkCubeHFile.java @@ -180,7 +180,10 @@ public class SparkCubeHFile extends AbstractApplication implements Serializable //HBase conf logger.info("Loading HBase configuration from:{}", hbaseConfFile); - FSDataInputStream confInput = fs.open(new Path(hbaseConfFile)); + // Get FileSystem based on the path of hbaseConfFile + Path hbaseConfFilePath = new Path(hbaseConfFile); + final FileSystem hbaseConfFileFs = hbaseConfFilePath.getFileSystem(sc.hadoopConfiguration()); + FSDataInputStream confInput = hbaseConfFileFs.open(hbaseConfFilePath); Configuration hbaseJobConf = new Configuration(); hbaseJobConf.addResource(confInput); @@ -189,7 +192,9 @@ public class SparkCubeHFile extends AbstractApplication implements Serializable FileOutputFormat.setOutputPath(job, new Path(outputPath)); - JavaPairRDD inputRDDs = SparkUtil.parseInputPath(inputPath, fs, sc, Text.class, Text.class); + // inputPath has the same FileSystem as hbaseConfFile when in HBase standalone mode + JavaPairRDD inputRDDs = SparkUtil.parseInputPath( + inputPath, hbaseConfFileFs, sc, Text.class, Text.class); final JavaPairRDD hfilerdd; if (quickPath) { hfilerdd = inputRDDs.mapToPair(new PairFunction, RowKeyWritable, KeyValue>() {