-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/66979/
-----------------------------------------------------------
Review request for hive and Vihang Karajgaonkar.
Bugs: HIVE-19374
https://issues.apache.org/jira/browse/HIVE-19374
Repository: hive-git
Description
-------
This patch implements the new ALTER SET ... SET OWNER command and calls the HMS
api calls to change the owner of the table.
The command syntax is:
> ALTER TABLE <table> SET OWNER { USER <user_name>|GROUP <group_name>|ROLE
> <role_name> }
Currently, Hive sets the owner of a table to the user who created that table.
With this command, we will be able to change it to another user, group of role
(as ALTER DATABASE does).
The changes are:
- HiveParser.g which adds the new syntax
- HiveOperation.java which adds the new ALTERTABLE_OWNER operation
- Table.java which gets/sets the owner type
- SemanticAnalyzer.java which returns the DDLSemanticAnalyzer if an
ALTERTABLE_OWNER operation is detected
- DDLSemanticAnalyzer.java which analyzes the ALTERTABLE_OWNER Operation
- AlterTableDesc.java uses by the DDL semantic analyzer to change the new owner
information
- MetaDataFormatUtils which displays the owner type when the DESCRIBE command
is called
- JsonMetaDataFormatted which is another implementation to display the owner
type in Json format
Diffs
-----
ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
3141a7e981eb35a9fbc7f367f38f8ad420f1f928
ql/src/java/org/apache/hadoop/hive/ql/metadata/Table.java
879b4224494c3a9adb0713f319e586db4865fb17
ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/JsonMetaDataFormatter.java
cd70eee26c06ee6476964508c54c2bb10b167530
ql/src/java/org/apache/hadoop/hive/ql/metadata/formatting/MetaDataFormatUtils.java
af283e693b5a0fc68e35221b2005fcf1910bdb8e
ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java
defb8becdb5d767ae71d5c962afac43f0c068c3c
ql/src/java/org/apache/hadoop/hive/ql/parse/HiveParser.g
a837d67b9615ca1ee359c7aa26f79b6f2504dd99
ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java
820046388adbc65664ae36b08aaba72943ccb6af
ql/src/java/org/apache/hadoop/hive/ql/plan/AlterTableDesc.java
a767796a949da3c23ebe6d8c78b995c8638ebfef
ql/src/java/org/apache/hadoop/hive/ql/plan/HiveOperation.java
cd4c206a89f1bc1a6195b0f1f39d3c4b462dc027
ql/src/test/queries/clientpositive/alter_table_set_owner.q PRE-CREATION
ql/src/test/results/clientpositive/alter_table_set_owner.q.out PRE-CREATION
Diff: https://reviews.apache.org/r/66979/diff/1/
Testing
-------
Waiting for HiveQA
- alter_table_set_owner.q which verifies that the new command works. Describe
is not tested because the .q tests files mask the owner information.
- the describe command verified manually in my local hive environment
Thanks,
Sergio Pena