安装datax之后,编写json测试ftp2hdfs的作业时,报如下错误:
java.sql.SQLException: Could not establish connection to
jdbc:hive2://xx.xx.xx.xx:10000/default: Required field 'client_protocol' is unset! Struct:TOpenSessionReq(client_protocol:null, configuration:{use:database=default})
出现这个异常的原因是由于hive的jdbc版本不对,发现在生产环境中hive Server 版本是1.1.0,而datax项目代码依赖的jar包还是原来的1.1.1;
方案有两种:
- 修改datax的源码,项目源码中修改对应的jar包,将1.1.1版本换成1.1.0。
- 升级hadoop中hive的组件版本,将hive1.1.0升级为1.1.1。
方案1自定义插件发布的案例:
https://www.jianshu.com/p/25dadd1c86f0
方案2hive的升级步骤案例:
https://www.cnblogs.com/lenmom/p/11194484.html