Получение либо исключения "java.lang.NoSuchFieldError: METASTORE_CLIENT_SOCKET_LIFETIME", либо "Обязательное поле 'client_protocol' не установлено!"

Я использую Структурированную Потоковую передачу Spark 2.1 (которая внутренне использует банки Jive 1.2.1). Я пытаюсь разработать ForEachWriter для Hive для записи потоковых данных в Hive через JDBC-коннектор.

На моем кластере у меня Hive 1.1.0.

Если я использую Hive jdbc jar версии 1.2.1, то получаю исключение из-за несоответствия в версии клиента и сервера Hive:

Required field 'client_protocol' is unset!

И если я использую Jive Jive Hive версии 1.1.0, то я получаю исключение в Spark, как показано ниже:

Caused by: java.lang.NoSuchFieldError: METASTORE_CLIENT_SOCKET_LIFETIME

Приходит при инициализации HiveContexбанка SparkSession,

1 ответ

Я столкнулся с той же проблемой и обнаружил HIVE-9508. Я предлагаю вам обновить улей до версии 1.2.1 или новее.

Другие вопросы по тегам