You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by sh...@apache.org on 2017/02/04 06:16:53 UTC

[31/39] kylin git commit: KYLIN-2374 fix path bug in HDFSResourceStore

KYLIN-2374 fix path bug in HDFSResourceStore

Signed-off-by: Hongbin Ma <ma...@apache.org>


Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/56293411
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/56293411
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/56293411

Branch: refs/heads/spark-it
Commit: 5629341122abe18d9576f71a0ea99ac83c327c21
Parents: a86569a
Author: xiefan46 <95...@qq.com>
Authored: Wed Jan 25 10:41:40 2017 +0800
Committer: Hongbin Ma <ma...@apache.org>
Committed: Wed Jan 25 11:19:13 2017 +0800

----------------------------------------------------------------------
 .../kylin/storage/hdfs/HDFSResourceStore.java   | 23 +++++++++++---------
 1 file changed, 13 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/56293411/storage-hbase/src/main/java/org/apache/kylin/storage/hdfs/HDFSResourceStore.java
----------------------------------------------------------------------
diff --git a/storage-hbase/src/main/java/org/apache/kylin/storage/hdfs/HDFSResourceStore.java b/storage-hbase/src/main/java/org/apache/kylin/storage/hdfs/HDFSResourceStore.java
index 0ad6964..38acfb0 100644
--- a/storage-hbase/src/main/java/org/apache/kylin/storage/hdfs/HDFSResourceStore.java
+++ b/storage-hbase/src/main/java/org/apache/kylin/storage/hdfs/HDFSResourceStore.java
@@ -18,7 +18,15 @@
 
 package org.apache.kylin.storage.hdfs;
 
-import com.google.common.collect.Lists;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.Collections;
+import java.util.List;
+import java.util.NavigableSet;
+import java.util.TreeSet;
+import java.util.concurrent.TimeUnit;
+
 import org.apache.commons.io.IOUtils;
 import org.apache.hadoop.fs.FSDataInputStream;
 import org.apache.hadoop.fs.FSDataOutputStream;
@@ -32,14 +40,7 @@ import org.apache.kylin.common.util.HadoopUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.io.ByteArrayInputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Collections;
-import java.util.List;
-import java.util.NavigableSet;
-import java.util.TreeSet;
-import java.util.concurrent.TimeUnit;
+import com.google.common.collect.Lists;
 
 public class HDFSResourceStore extends ResourceStore {
 
@@ -63,7 +64,7 @@ public class HDFSResourceStore extends ResourceStore {
         int cut = metadataUrl.indexOf('@');
         String metaDirName = cut < 0 ? DEFAULT_FOLDER_NAME : metadataUrl.substring(0, cut);
         String hdfsUrl = cut < 0 ? metadataUrl : metadataUrl.substring(cut + 1);
-        if(!hdfsUrl.equals("hdfs"))
+        if (!hdfsUrl.equals("hdfs"))
             throw new IOException("Can not create HDFSResourceStore. Url not match. Url:" + hdfsUrl);
         metaDirName += "/" + DEFAULT_METADATA_FOLDER_NAME;
         logger.info("meta dir name :" + metaDirName);
@@ -245,6 +246,8 @@ public class HDFSResourceStore extends ResourceStore {
     }
 
     private Path getRealHDFSPath(String resourcePath) {
+        if (resourcePath.equals("/"))
+            return this.hdfsMetaPath;
         if (resourcePath.startsWith("/") && resourcePath.length() > 1)
             resourcePath = resourcePath.substring(1, resourcePath.length());
         return new Path(this.hdfsMetaPath, resourcePath);