有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

apache spark获得异常“java.lang.NoSuchFieldError:METASTORE\u CLIENT\u SOCKET\u LIFETIME”或“必填字段‘CLIENT\u协议’未设置!”

我正在使用Spark 2.1的结构化流媒体(它内部使用Hive 1.2.1 JAR)。我正在尝试为Hive开发ForEachWriter,以便通过JDBC连接器将流数据写入Hive

在我的集群上,我有Hive1.1.0

如果我使用1.2.1版的HiveJDBCJAR,那么由于客户端和;配置单元的服务器版本:

Required field 'client_protocol' is unset!

如果我使用1.1.0版的Hive jdbc jar,那么Spark中会出现如下异常:

Caused by: java.lang.NoSuchFieldError: METASTORE_CLIENT_SOCKET_LIFETIME

它是在SparkSession中初始化HiveContext时出现的


共 (1) 个答案

  1. # 1 楼答案

    我面对同样的问题,发现HIVE-9508。我建议您将hive升级到1.2.1或更高版本