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

it report can't find the intermediate table in '#4 Step Name: Build Dimension Dictionary' when use hive view as lookup table

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Duplicate
    • v1.5.2.1
    • v1.5.3
    • None
    • None

    Description

      when use a hive view as lookup table ,it has some steps:
      1、#1 Step Name: Create Intermediate Flat Hive Table
      2、#2 Step Name: Materialize Hive View in Lookup Tables
      3、#3 Step Name: Extract Fact Table Distinct Columns
      4、#4 Step Name: Build Dimension Dictionary
      ....
      --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
      in #4 Step Name: Build Dimension Dictionary,it get an exception:
      java.io.IOException: NoSuchObjectException(message:KYLIN.kylin_intermediate_KYLIN_TEST_DEALS_VIEW table not found)
      at org.apache.kylin.source.hive.HiveTable.getSignature(HiveTable.java:71)
      at org.apache.kylin.dict.DictionaryManager.buildDictionary(DictionaryManager.java:288)
      at org.apache.kylin.cube.CubeManager.buildDictionary(CubeManager.java:165)
      at org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:51)
      at org.apache.kylin.cube.cli.DictionaryGeneratorCLI.processSegment(DictionaryGeneratorCLI.java:42)
      at org.apache.kylin.engine.mr.steps.CreateDictionaryJob.run(CreateDictionaryJob.java:56)
      at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
      at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:84)
      at org.apache.kylin.engine.mr.common.HadoopShellExecutable.doWork(HadoopShellExecutable.java:60)
      at org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:114)
      at org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:50)
      at org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:114)
      at org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:124)
      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)
      Caused by: NoSuchObjectException(message:KYLIN.kylin_intermediate_KYLIN_TEST_DEALS_VIEW table not found)
      at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.get_table_core(HiveMetaStore.java:1773)
      at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.get_table(HiveMetaStore.java:1743)
      at sun.reflect.GeneratedMethodAccessor116.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at org.apache.hadoop.hive.metastore.RetryingHMSHandler.invoke(RetryingHMSHandler.java:102)
      at com.sun.proxy.$Proxy63.get_table(Unknown Source)
      at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.getTable(HiveMetaStoreClient.java:1153)
      at org.apache.kylin.source.hive.HiveClient.getHiveTable(HiveClient.java:115)
      at org.apache.kylin.source.hive.HiveClient.getHiveTableLocation(HiveClient.java:123)
      at org.apache.kylin.source.hive.HiveTable.computeHDFSLocation(HiveTable.java:83)
      at org.apache.kylin.source.hive.HiveTable.getSignature(HiveTable.java:55)
      ... 15 more

      result code:2

      --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

      so,in step2(#2 Step Name: Materialize Hive View in Lookup Tables) parameters, I just find it's create a intermediate table named 'kylin_intermediate_DEFAULT_TEST_DEALS_VIEW':

      DROP TABLE IF EXISTS kylin_intermediate_DEFAULT_TEST_DEALS_VIEW;
      CREATE TABLE IF NOT EXISTS kylin_intermediate_DEFAULT_TEST_DEALS_VIEW
      LOCATION '/kylin/kylin_metadata/kylin-a18fb65e-d40e-46a8-b15f-dd45046be096/kylin_intermediate_DEFAULT_TEST_DEALS_VIEW'
      AS SELECT * FROM DEFAULT.TEST_DEALS_VIEW;

      --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
      but in step4(#4 Step Name: Build Dimension Dictionary) 's log, it show the intermediate table named :kylin_intermediate_KYLIN_TEST_DEALS_VIEW

      'message:KYLIN.kylin_intermediate_KYLIN_TEST_DEALS_VIEW table not found'

      --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
      is there any thing wrong ?

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              fivefish wuyu
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: