[
https://issues.apache.org/jira/browse/HIVE-24807?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
zhuxiangqian resolved HIVE-24807.
---------------------------------
Fix Version/s: 3.1.0
Resolution: Fixed
I find that my hive/lib directory has a hudi-utilities-bundle_2.11-0.7.0.jar .
it has a package.jdo file which defin DBS as below:
{code:java}
<class name="MDatabase" identity-type="datastore" table="DBS" detachable="true">
<datastore-identity>
<column name="DB_ID"/>
</datastore-identity>
<field name="name">
<column name="NAME" length="128" jdbc-type="VARCHAR"/>
<index name="UniqueDatabase" unique="true"/>
</field>
<field name="description">
<column name="DESC" length="4000" jdbc-type="VARCHAR" allows-null="true"/>
</field>
<field name="locationUri">
<column name="DB_LOCATION_URI" length="4000" jdbc-type="VARCHAR"
allows-null="false"/>
</field>
<field name="parameters" table="DATABASE_PARAMS">
<map key-type="java.lang.String" value-type="java.lang.String"/>
<join>
<column name="DB_ID"/>
</join>
<key>
<column name="PARAM_KEY" length="180" jdbc-type="VARCHAR"/>
</key>
<value>
<column name="PARAM_VALUE" length="4000" jdbc-type="VARCHAR"/>
</value>
</field>
<field name="ownerName">
<column name="OWNER_NAME" length="128" jdbc-type="VARCHAR" allows-null="true"/>
</field>
<field name="ownerType">
<column name="OWNER_TYPE" length="10" jdbc-type="VARCHAR" allows-null="true"/>
</field>
</class>{code}
it doesn't define filed CTLOG_NAME,but in hive3
,hive-standalone-metastore-3.1.0.jar does hive, as below:
{code:java}
<class name="MDatabase" identity-type="datastore" table="DBS" detachable="true">
<datastore-identity>
<column name="DB_ID"/>
</datastore-identity>
<index name="UniqueDatabase" unique="true">
<column name="NAME"/>
<column name="CTLG_NAME"/>
</index>
<field name="name">
<column name="NAME" length="128" jdbc-type="VARCHAR"/>
</field>
<field name="catalogName">
<column name="CTLG_NAME" length="256" jdbc-type="VARCHAR"/>
</field>
<field name="description">
<column name="DESC" length="4000" jdbc-type="VARCHAR" allows-null="true"/>
</field>
<field name="locationUri">
<column name="DB_LOCATION_URI" length="4000" jdbc-type="VARCHAR"
allows-null="false"/>
</field>
<field name="parameters" table="DATABASE_PARAMS">
<map key-type="java.lang.String" value-type="java.lang.String"/>
<join>
<column name="DB_ID"/>
</join>
<key>
<column name="PARAM_KEY" length="180" jdbc-type="VARCHAR"/>
</key>
<value>
<column name="PARAM_VALUE" length="4000" jdbc-type="VARCHAR"/>
</value>
</field>
<field name="ownerName">
<column name="OWNER_NAME" length="128" jdbc-type="VARCHAR" allows-null="true"/>
</field>
<field name="ownerType">
<column name="OWNER_TYPE" length="10" jdbc-type="VARCHAR" allows-null="true"/>
</field>
</class>{code}
as now hudi depency on hive2 ,that why cause this problem.
> Unknown column 'B0.CATALOG_NAME' in 'where clause'
> --------------------------------------------------
>
> Key: HIVE-24807
> URL: https://issues.apache.org/jira/browse/HIVE-24807
> Project: Hive
> Issue Type: Bug
> Components: HiveServer2
> Affects Versions: 3.1.0
> Environment: hadoop3.1.1/hive3.1.0/ranger2.1.0
> Reporter: zhuxiangqian
> Assignee: zhuxiangqian
> Priority: Major
> Fix For: 3.1.0
>
>
> I am trying hive-rel-release-3.1.0 on Hadoop 3.1.1 . when start hiveserver2,
> I get error log below:
>
> 2021-02-22T14:03:13,308 ERROR [pool-8-thread-33]
> metastore.RetryingHMSHandler: Retrying HMSHandler after 2000 ms (attempt 1 of
> 10) with error: javax.jdo.JDOException: Exception thrown when executing query
> : SELECT DISTINCT 'org.apache.hadoop.hive.metastore.model.MFunction' AS
> `NUCLEUS_TYPE`,`A0`.`CLASS_NAME`,`A0`.`CREATE_TIME`,`A0`.`FUNC_NAME`,`A0`.`FUNC_TYPE`,`A0`.`OWNER_NAME`,`A0`.`OWNER_TYPE`,`A0`.`FUNC_ID`
> FROM `FUNCS` `A0` LEFT OUTER JOIN `DBS` `B0` ON `A0`.`DB_ID` = `B0`.`DB_ID`
> WHERE `B0`.`CATALOG_NAME` = ?
> 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:228)
> at
> org.apache.hadoop.hive.metastore.ObjectStore.getAllFunctions(ObjectStore.java:9393)
> at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at
> org.apache.hadoop.hive.metastore.RawStoreProxy.invoke(RawStoreProxy.java:97)
> at com.sun.proxy.$Proxy26.getAllFunctions(Unknown Source)
> at
> org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.get_all_functions(HiveMetaStore.java:7102)
> at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at
> org.apache.hadoop.hive.metastore.RetryingHMSHandler.invokeInternal(RetryingHMSHandler.java:147)
> at
> org.apache.hadoop.hive.metastore.RetryingHMSHandler.invoke(RetryingHMSHandler.java:108)
> at com.sun.proxy.$Proxy27.get_all_functions(Unknown Source)
> at
> org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Processor$get_all_functions.getResult(ThriftHiveMetastore.java:17242)
> at
> org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Processor$get_all_functions.getResult(ThriftHiveMetastore.java:17226)
> at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
> at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
> at
> org.apache.hadoop.hive.metastore.security.HadoopThriftAuthBridge$Server$TUGIAssumingProcessor$1.run(HadoopThriftAuthBridge.java:636)
> at
> org.apache.hadoop.hive.metastore.security.HadoopThriftAuthBridge$Server$TUGIAssumingProcessor$1.run(HadoopThriftAuthBridge.java:631)
> at java.security.AccessController.doPrivileged(Native Method)
> at javax.security.auth.Subject.doAs(Subject.java:422)
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1729)
> at
> org.apache.hadoop.hive.metastore.security.HadoopThriftAuthBridge$Server$TUGIAssumingProcessor.process(HadoopThriftAuthBridge.java:631)
> at
> org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:286)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
> NestedThrowablesStackTrace:
> com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column
> 'B0.CATALOG_NAME' in 'where clause'
> at sun.reflect.GeneratedConstructorAccessor45.newInstance(Unknown Source)
> at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
> at com.mysql.jdbc.Util.handleNewInstance(Util.java:408)
> at com.mysql.jdbc.Util.getInstance(Util.java:383)
> at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1062)
> at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4226)
> at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4158)
> at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2615)
> at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2776)
> at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2840)
> at
> com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2082)
> at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2212)
> 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)
> at org.datanucleus.api.jdo.JDOQuery.execute(JDOQuery.java:228)
> at
> org.apache.hadoop.hive.metastore.ObjectStore.getAllFunctions(ObjectStore.java:9393)
> at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at
> org.apache.hadoop.hive.metastore.RawStoreProxy.invoke(RawStoreProxy.java:97)
> at com.sun.proxy.$Proxy26.getAllFunctions(Unknown Source)
> at
> org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.get_all_functions(HiveMetaStore.java:7102)
> at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at
> org.apache.hadoop.hive.metastore.RetryingHMSHandler.invokeInternal(RetryingHMSHandler.java:147)
> at
> org.apache.hadoop.hive.metastore.RetryingHMSHandler.invoke(RetryingHMSHandler.java:108)
> at com.sun.proxy.$Proxy27.get_all_functions(Unknown Source)
> at
> org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Processor$get_all_functions.getResult(ThriftHiveMetastore.java:17242)
> at
> org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Processor$get_all_functions.getResult(ThriftHiveMetastore.java:17226)
> at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
> at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
> at
> org.apache.hadoop.hive.metastore.security.HadoopThriftAuthBridge$Server$TUGIAssumingProcessor$1.run(HadoopThriftAuthBridge.java:636)
> at
> org.apache.hadoop.hive.metastore.security.HadoopThriftAuthBridge$Server$TUGIAssumingProcessor$1.run(HadoopThriftAuthBridge.java:631)
> at java.security.AccessController.doPrivileged(Native Method)
> at javax.security.auth.Subject.doAs(Subject.java:422)
> at
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1729)
> at
> org.apache.hadoop.hive.metastore.security.HadoopThriftAuthBridge$Server$TUGIAssumingProcessor.process(HadoopThriftAuthBridge.java:631)
> at
> org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:286)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
--
This message was sent by Atlassian Jira
(v8.3.4#803005)