Uploaded image for project: 'Kylin'
  1. Kylin
  2. KYLIN-1400

kylin.metadata.url with hbase namespace problem

VotersWatch issueWatchersLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    Description

      we want to change hbase namespace from "default" to "ALALEI",for security reason

      env:
      Kylin downloaded from https://dist.apache.org/repos/dist/release/kylin/apache-kylin-1.2/apache-kylin-1.2-bin.tar.gz
      Hbase: 0.98.16.1 from community

      conf/kylin.properties
      kylin.metadata.url=ALALEI:kylin_metadata@hbase

      when building sample cube,step 1 hangs on:
      FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:java.lang.IllegalArgumentException: Pathname /user/alalei/kylin/ALALEI:kylin_metadata/kylin-c39f5ba8-37cf-4da9-a995-b71fce988259/kylin_intermediate_kylin_sales_cube_desc_19700101000000_20160201000000_c39f5ba8_37cf_4da9_a995_b71fce988259 from /user/alalei/kylin/ALALEI:kylin_metadata/kylin-c39f5ba8-37cf-4da9-a995-b71fce988259/kylin_intermediate_kylin_sales_cube_desc_19700101000000_20160201000000_c39f5ba8_37cf_4da9_a995_b71fce988259 is not a valid DFS filename.)

      at org.apache.kylin.common.util.CliCommandExecutor.execute(CliCommandExecutor.java:90)
      at org.apache.kylin.job.common.ShellExecutable.doWork(ShellExecutable.java:52)
      at org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:107)
      at org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:51)
      at org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:107)
      at org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:130)
      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:744)

      the above kylin.metadata.url with namespace works fine with hbase operation,and i can see hbase new tables created under namespace "ALALEI"

      the error happens in ./job/src/main/java/org/apache/kylin/job/JoinedFlatTable.java with function generateCreateTableStatement,where the second parameter storageDfsDir defined in getMetadataUrlPrefix from ./common/src/main/java/org/apache/kylin/common/KylinConfig.java

      hdfs don't allow special colon in hdfs url path,so hive related create table ddl with location can't be executed

      Attachments

        1. KYLIN-1400.patch
          0.7 kB
          Zhihua Deng
        2. KYLIN-1400-2.x-staging.patch
          0.8 kB
          Zhihua Deng

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            shaofengshi Shao Feng Shi
            linbao111 linbao111
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment