You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by 赵帅 <zh...@2b13c.com> on 2022/07/28 06:37:17 UTC

关于老版本cdh兼容性问题

Flink版本:1.15.0
Hive版本:1.1.0-cdh5.15.1
问题描述:
java.lang.NullPointerException
	at org.apache.flink.table.catalog.hive.client.HiveShimV100.registerTemporaryFunction(HiveShimV100.java:422)
	at org.apache.flink.table.planner.delegation.hive.HiveParser.parse(HiveParser.java:207)
	at org.apache.flink.table.api.internal.TableEnvironmentImpl.executeSql(TableEnvironmentImpl.java:695)



经排查:该版本hive匹配了HiveShimV110,HiveShimV110集成了HiveShimV100,而在HiveShimV100类中使用了反射的方式调用了org.apache.hadoop.hive.ql.exec.FunctionRegistry类中的registerTemporaryFunction,此方法在1.1.0-cdh5.15.1版本的hive-exec的依赖包FunctionRegistry类中不存在,且对比了apache社区版本的hive1.1.0的该类是存在该方法的,
且实际使用中如果将hive、hadoop版本切换为相应的apache社区版本会出现冲突。


请各位大神们提供一个解决方案,同时请官方针对这个问题修复一下针对cdh1.1.0版本hive-exec的兼容问题,

Re: 关于老版本cdh兼容性问题

Posted by yuxia <lu...@alumni.sjtu.edu.cn>.
Flink 社区主要维护 Hive2,Hive3 这两个版本的 Hive connector。
针对你这个问题,你可以该一下HiveShimV110,以适配你的 CDH。然后重新build flink-hive-connector即可。

Best regards,
Yuxia

----- 原始邮件 -----
发件人: "赵帅" <zh...@2b13c.com>
收件人: "user-zh" <us...@flink.apache.org>
发送时间: 星期四, 2022年 7 月 28日 下午 2:37:17
主题: 关于老版本cdh兼容性问题

Flink版本:1.15.0
Hive版本:1.1.0-cdh5.15.1
问题描述:
java.lang.NullPointerException
	at org.apache.flink.table.catalog.hive.client.HiveShimV100.registerTemporaryFunction(HiveShimV100.java:422)
	at org.apache.flink.table.planner.delegation.hive.HiveParser.parse(HiveParser.java:207)
	at org.apache.flink.table.api.internal.TableEnvironmentImpl.executeSql(TableEnvironmentImpl.java:695)



经排查:该版本hive匹配了HiveShimV110,HiveShimV110集成了HiveShimV100,而在HiveShimV100类中使用了反射的方式调用了org.apache.hadoop.hive.ql.exec.FunctionRegistry类中的registerTemporaryFunction,此方法在1.1.0-cdh5.15.1版本的hive-exec的依赖包FunctionRegistry类中不存在,且对比了apache社区版本的hive1.1.0的该类是存在该方法的,
且实际使用中如果将hive、hadoop版本切换为相应的apache社区版本会出现冲突。


请各位大神们提供一个解决方案,同时请官方针对这个问题修复一下针对cdh1.1.0版本hive-exec的兼容问题,