[ 
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)

Reply via email to