1. java.lang.LinkageError: org/apache/hudi/org/apache/parquet/column/ColumnDescriptor
原因:主键问题
处理方式:检查建表语句主键,参考官网主键设置。
2. java.lang.NoSuchMethodError: org.apache.flink.table.factories.DynamicTableFactory$Context.getCatalogTable()Lorg/apache/flink/table/catalog/CatalogTable
:nosuchMehodError(没有该方法),优先考虑版本是否适配。因为版本不适配导致程序在找相应版本方法时候找不到,就会报这个错误。
处理方式:根据官网找到和下载flink和hudi相应的适配版本即可。比如scala2.11.8、flink1.13.6和hudi0.10.1就适配(亲测)。
地址如下:
scala2.11.8:https://www.scala-lang.org/download/2.11.8.html 下的scala-2.11.8.tgz
flink1.13.6:https://dlcdn.apache.org/flink/flink-1.13.6/flink-1.13.6-bin-scala_2.11.tgz
3. Could not execute SQL statement. Reason: java.net.ConnectException: Connection refused
原因:拒绝连接,意味着访问hdfs地址访问不到或者flink整个程序已经挂掉。
处理方式:1.检查hudi映射的hdfs文件的地址是否正确
2.检查Hadoop集群要访问节点namenode是否是active状态(建议直接ip地址:50070查看),不是的话换个active节点就行。比如Hadoop01节点是standby,Hadoop02节点是active,直接更改地址'path' = 'hdfs://hadoop01:8020/hud/改为'path' = 'hdfs://hadoop02:8020/hud/'。
3.检查flink集群是否在线。(建议直接ip地址:8081查看),如果进不去,重flink集群
${FLINK_HOME}/bin/start-cluster.sh