Операция не разрешена: изменить таблицу, добавить столбцы (строка 1, позиция 0)

У нас есть Spark 2.1, Thrift JDBC/ODBC сервер настроен с Hive 2.1.1 и используя Beeline,

DDL заявления, такие как

CREATE TABLE, CREATE TABLE LIKE, CREATE TABLE LIKE, ALTER TABLE SET TBLPROPERTIES

работает хорошо.

Но ALTER TABLE ADD COLUMNS терпит неудачу

create table tbl1 (id int, c1 string, c2 string);
alter table tbl1 add columns (c3 string);

Ошибка: org.apache.spark.sql.catalyst.parser.ParseException: операция не разрешена: изменить таблицу, добавить столбцы (строка 1, позиция 0)

== SQL == изменить таблицу tbl1 добавить столбцы (строка c3) ^^^ (состояние =, код =0)

Любая подсказка будет оценена

2 ответа

Похоже, что это работа над Spark v2.x

https://issues.apache.org/jira/browse/SPARK-19261

То, что сработало для меня, поэтому я добавляю это как возможный ответ здесь, было использовать куст прямо из консоли, все ALTER TABLE заявления работали как шарм (мы на Spark 2.0.2 без особого спешки для обновления...).

Попробуйте использовать HiveContext вместо spark Session. Так как некоторые запросы метастазов кустов хорошо работают с spark Session.

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