Looks like an issue of the incompatibility of hive3 with Kylin. Kylin2.6.1 is developed with dependency of Hive 1.2.1.
-- Best regards, Ni Chunen / George At 2019-04-08 11:33:37, "huang, fangyuan" <hfy_1...@163.com> wrote: >Hi George, > > >I think this column is "IS_REWRITE_ENABLED" all the time since I run the >schematool script. >By the way, this select sql is generated by kylin or hive? Should I try to >change their versions? > >Thanks, >Huang Fangyuan > > >At 2019-04-08 09:50:53, "nichunen" <n...@apache.org> wrote: >>Hi Fangyuan, >> >> >> >> >>Was the column name "IS_REWRITE_ENABLED" of your hive table used to be >>"REWRITE_ENABLED" ? >> >> >> >>-- >> >> >>Best regards, >> >> >> >>Ni Chunen / George >> >> >> >> >>At 2019-04-07 16:46:52, "huang, fangyuan" <hfy_1...@163.com> wrote: >>>Hi Kylin team, >>> >>>I'm a new user of Kylin. When I start with the sample cube and try to build >>>cube kylin_sales_cube, it throws a exception in step #2. The exception logs >>>are following: >>>MetaException(message:Exception thrown when executing query : SELECT >>>DISTINCT 'org.apache.hadoop.hive.metastore.model.MTable' AS >>>`NUCLEUS_TYPE`,`A0`.`CREATE_TIME`,`A0`.`LAST_ACCESS_TIME`,`A0`.`OWNER`,`A0`.`OWNER_TYPE`,`A0`.`RETENTION`,`A0`.`REWRITE_ENABLED`,`A0`.`TBL_NAME`,`A0`.`TBL_TYPE`,`A0`.`TBL_ID` >>> FROM `TBLS` `A0` LEFT OUTER JOIN `DBS` `B0` ON `A0`.`DB_ID` = `B0`.`DB_ID` >>>WHERE `A0`.`TBL_NAME` = ? AND `B0`.`NAME` = ? AND `B0`.`CATALOG_NAME` = ?) >>> at >>> org.apache.hadoop.hive.metastore.RetryingHMSHandler.invokeInternal(RetryingHMSHandler.java:208) >>> at >>> org.apache.hadoop.hive.metastore.RetryingHMSHandler.invoke(RetryingHMSHandler.java:108) >>> at com.sun.proxy.$Proxy66.get_table_req(Unknown Source) >>> at >>> org.apache.hadoop.hive.metastore.HiveMetaStoreClient.getTable(HiveMetaStoreClient.java:1578) >>> at >>> org.apache.hadoop.hive.metastore.HiveMetaStoreClient.getTable(HiveMetaStoreClient.java:1570) >>> at >>> org.apache.kylin.source.hive.CLIHiveClient.getHiveTableRows(CLIHiveClient.java:126) >>> at >>> org.apache.kylin.source.hive.RedistributeFlatHiveTableStep.computeRowCount(RedistributeFlatHiveTableStep.java:41) >>> at >>> org.apache.kylin.source.hive.RedistributeFlatHiveTableStep.doWork(RedistributeFlatHiveTableStep.java:91) >>> at >>> org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:166) >>> at >>> org.apache.kylin.job.execution.DefaultChainedExecutable.doWork(DefaultChainedExecutable.java:71) >>> at >>> org.apache.kylin.job.execution.AbstractExecutable.execute(AbstractExecutable.java:166) >>> at >>> org.apache.kylin.job.impl.threadpool.DefaultScheduler$JobRunner.run(DefaultScheduler.java:114) >>> at >>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) >>> at >>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) >>> at java.lang.Thread.run(Thread.java:745) >>>Caused by: javax.jdo.JDOException: Exception thrown when executing query : >>>SELECT DISTINCT 'org.apache.hadoop.hive.metastore.model.MTable' AS >>>`NUCLEUS_TYPE`,`A0`.`CREATE_TIME`,`A0`.`LAST_ACCESS_TIME`,`A0`.`OWNER`,`A0`.`OWNER_TYPE`,`A0`.`RETENTION`,`A0`.`REWRITE_ENABLED`,`A0`.`TBL_NAME`,`A0`.`TBL_TYPE`,`A0`.`TBL_ID` >>> FROM `TBLS` `A0` LEFT OUTER JOIN `DBS` `B0` ON `A0`.`DB_ID` = `B0`.`DB_ID` >>>WHERE `A0`.`TBL_NAME` = ? AND `B0`.`NAME` = ? AND `B0`.`CATALOG_NAME` = ? >>>NestedThrowables: >>>com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column >>>'A0.REWRITE_ENABLED' in 'field list' >>> at >>> org.datanucleus.api.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:677) >>> at org.datanucleus.api.jdo.JDOQuery.executeInternal(JDOQuery.java:391) >>> at org.datanucleus.api.jdo.JDOQuery.execute(JDOQuery.java:255) >>> at >>> org.apache.hadoop.hive.metastore.ObjectStore.getMTable(ObjectStore.java:1863) >>> at >>> org.apache.hadoop.hive.metastore.ObjectStore.getMTable(ObjectStore.java:1899) >>> at >>> org.apache.hadoop.hive.metastore.ObjectStore.getTable(ObjectStore.java:1507) >>> at sun.reflect.GeneratedMethodAccessor109.invoke(Unknown Source) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:497) >>> at >>> org.apache.hadoop.hive.metastore.RawStoreProxy.invoke(RawStoreProxy.java:97) >>> at com.sun.proxy.$Proxy64.getTable(Unknown Source) >>> at >>> org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.get_table_core(HiveMetaStore.java:2946) >>> at >>> org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getTableInternal(HiveMetaStore.java:2907) >>> at >>> org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.get_table_req(HiveMetaStore.java:2892) >>> at sun.reflect.GeneratedMethodAccessor108.invoke(Unknown Source) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:497) >>> at >>> org.apache.hadoop.hive.metastore.RetryingHMSHandler.invokeInternal(RetryingHMSHandler.java:147) >>> ... 14 more >>>Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: >>>Unknown column 'A0.REWRITE_ENABLED' in 'field list' >>> at sun.reflect.GeneratedConstructorAccessor57.newInstance(Unknown >>> Source) >>> at >>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) >>> at java.lang.reflect.Constructor.newInstance(Constructor.java:422) >>> at com.mysql.jdbc.Util.handleNewInstance(Util.java:377) >>> at com.mysql.jdbc.Util.getInstance(Util.java:360) >>> at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:978) >>> at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3887) >>> at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3823) >>> at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2435) >>> at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2582) >>> at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2530) >>> at >>> com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1907) >>> at >>> com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2030) >>> at >>> com.zaxxer.hikari.pool.ProxyPreparedStatement.executeQuery(ProxyPreparedStatement.java:52) >>> at >>> com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeQuery(HikariProxyPreparedStatement.java) >>> at >>> org.datanucleus.store.rdbms.ParamLoggingPreparedStatement.executeQuery(ParamLoggingPreparedStatement.java:375) >>> at >>> org.datanucleus.store.rdbms.SQLController.executeStatementQuery(SQLController.java:552) >>> at >>> org.datanucleus.store.rdbms.query.JDOQLQuery.performExecute(JDOQLQuery.java:617) >>> at org.datanucleus.store.query.Query.executeQuery(Query.java:1855) >>> at org.datanucleus.store.query.Query.executeWithArray(Query.java:1744) >>> at org.datanucleus.api.jdo.JDOQuery.executeInternal(JDOQuery.java:368) >>> ... 30 more >>>And I check the table TBLS in mysql and the field is IS_REWRITE_ENABLED. >>>mysql> describe TBLS; >>> >>> >>>+--------------------+--------------+------+-----+---------+-------+ >>>| Field | Type | Null | Key | Default | Extra | >>>+--------------------+--------------+------+-----+---------+-------+ >>>| TBL_ID | bigint(20) | NO | PRI | NULL | | >>>| CREATE_TIME | int(11) | NO | | NULL | | >>>| DB_ID | bigint(20) | YES | MUL | NULL | | >>>| LAST_ACCESS_TIME | int(11) | NO | | NULL | | >>>| OWNER | varchar(767) | YES | | NULL | | >>>| OWNER_TYPE | varchar(10) | YES | | NULL | | >>>| RETENTION | int(11) | NO | | NULL | | >>>| SD_ID | bigint(20) | YES | MUL | NULL | | >>>| TBL_NAME | varchar(256) | YES | MUL | NULL | | >>>| TBL_TYPE | varchar(128) | YES | | NULL | | >>>| VIEW_EXPANDED_TEXT | mediumtext | YES | | NULL | | >>>| VIEW_ORIGINAL_TEXT | mediumtext | YES | | NULL | | >>>| IS_REWRITE_ENABLED | bit(1) | NO | | b'0' | | >>>+--------------------+--------------+------+-----+---------+-------+ >>> >>>So I have no idea if this is a bug or incompatibility of software. My hive >>>version is 3.1.1 and kylin version is 2.6.1. >>>Pleas help me check this issue, Thanks a lot !