[
https://issues.apache.org/jira/browse/HIVE-2093?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Phabricator updated HIVE-2093:
------------------------------
Attachment: HIVE-2093.D12807.1.patch
navis requested code review of "HIVE-2093 [jira] create/drop database should
populate inputs/outputs and check concurrency and user permission".
Reviewers: JIRA
concurrency and authorization are needed for create/drop table. Also to make
concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS
DATABASE
TEST PLAN
EMPTY
REVISION DETAIL
https://reviews.facebook.net/D12807
AFFECTED FILES
ql/src/java/org/apache/hadoop/hive/ql/Driver.java
ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java
ql/src/java/org/apache/hadoop/hive/ql/hooks/Entity.java
ql/src/java/org/apache/hadoop/hive/ql/hooks/ReadEntity.java
ql/src/java/org/apache/hadoop/hive/ql/hooks/WriteEntity.java
ql/src/java/org/apache/hadoop/hive/ql/parse/DDLSemanticAnalyzer.java
ql/src/java/org/apache/hadoop/hive/ql/parse/ExportSemanticAnalyzer.java
ql/src/java/org/apache/hadoop/hive/ql/parse/HiveParser.g
ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzer.java
ql/src/java/org/apache/hadoop/hive/ql/parse/SemanticAnalyzerFactory.java
ql/src/java/org/apache/hadoop/hive/ql/plan/DDLWork.java
ql/src/java/org/apache/hadoop/hive/ql/plan/HiveOperation.java
ql/src/java/org/apache/hadoop/hive/ql/plan/LockDatabaseDesc.java
ql/src/java/org/apache/hadoop/hive/ql/plan/ShowLocksDesc.java
ql/src/java/org/apache/hadoop/hive/ql/plan/UnlockDatabaseDesc.java
ql/src/test/queries/clientnegative/authorization_fail_create_db.q
ql/src/test/queries/clientnegative/authorization_fail_drop_db.q
ql/src/test/queries/clientnegative/lockneg_query_tbl_in_locked_db.q
ql/src/test/queries/clientnegative/lockneg_try_db_lock_conflict.q
ql/src/test/queries/clientnegative/lockneg_try_drop_locked_db.q
ql/src/test/queries/clientnegative/lockneg_try_lock_db_in_use.q
ql/src/test/results/clientnegative/authorization_fail_2.q.out
ql/src/test/results/clientnegative/authorization_fail_3.q.out
ql/src/test/results/clientnegative/authorization_fail_4.q.out
ql/src/test/results/clientnegative/authorization_fail_5.q.out
ql/src/test/results/clientnegative/authorization_fail_6.q.out
ql/src/test/results/clientnegative/authorization_fail_7.q.out
ql/src/test/results/clientnegative/authorization_fail_create_db.q.out
ql/src/test/results/clientnegative/authorization_fail_drop_db.q.out
ql/src/test/results/clientnegative/authorization_part.q.out
ql/src/test/results/clientnegative/database_create_already_exists.q.out
ql/src/test/results/clientnegative/database_create_invalid_name.q.out
ql/src/test/results/clientnegative/database_drop_does_not_exist.q.out
ql/src/test/results/clientnegative/database_drop_not_empty.q.out
ql/src/test/results/clientnegative/database_drop_not_empty_restrict.q.out
ql/src/test/results/clientnegative/desc_failure3.q.out
ql/src/test/results/clientnegative/drop_table_failure3.q.out
ql/src/test/results/clientnegative/exim_01_nonpart_over_loaded.q.out
ql/src/test/results/clientnegative/exim_02_all_part_over_overlap.q.out
ql/src/test/results/clientnegative/exim_03_nonpart_noncompat_colschema.q.out
ql/src/test/results/clientnegative/exim_04_nonpart_noncompat_colnumber.q.out
ql/src/test/results/clientnegative/exim_05_nonpart_noncompat_coltype.q.out
ql/src/test/results/clientnegative/exim_06_nonpart_noncompat_storage.q.out
ql/src/test/results/clientnegative/exim_07_nonpart_noncompat_ifof.q.out
ql/src/test/results/clientnegative/exim_08_nonpart_noncompat_serde.q.out
ql/src/test/results/clientnegative/exim_09_nonpart_noncompat_serdeparam.q.out
ql/src/test/results/clientnegative/exim_10_nonpart_noncompat_bucketing.q.out
ql/src/test/results/clientnegative/exim_11_nonpart_noncompat_sorting.q.out
ql/src/test/results/clientnegative/exim_13_nonnative_import.q.out
ql/src/test/results/clientnegative/exim_14_nonpart_part.q.out
ql/src/test/results/clientnegative/exim_15_part_nonpart.q.out
ql/src/test/results/clientnegative/exim_16_part_noncompat_schema.q.out
ql/src/test/results/clientnegative/exim_17_part_spec_underspec.q.out
ql/src/test/results/clientnegative/exim_18_part_spec_missing.q.out
ql/src/test/results/clientnegative/exim_19_external_over_existing.q.out
ql/src/test/results/clientnegative/exim_20_managed_location_over_existing.q.out
ql/src/test/results/clientnegative/exim_21_part_managed_external.q.out
ql/src/test/results/clientnegative/exim_22_export_authfail.q.out
ql/src/test/results/clientnegative/exim_23_import_exist_authfail.q.out
ql/src/test/results/clientnegative/exim_24_import_part_authfail.q.out
ql/src/test/results/clientnegative/exim_25_import_nonexist_authfail.q.out
ql/src/test/results/clientnegative/join_nonexistent_part.q.out
ql/src/test/results/clientnegative/load_exist_part_authfail.q.out
ql/src/test/results/clientnegative/load_nonpart_authfail.q.out
ql/src/test/results/clientnegative/load_part_authfail.q.out
ql/src/test/results/clientnegative/lockneg_query_tbl_in_locked_db.q.out
ql/src/test/results/clientnegative/lockneg_try_db_lock_conflict.q.out
ql/src/test/results/clientnegative/lockneg_try_drop_locked_db.q.out
ql/src/test/results/clientnegative/lockneg_try_lock_db_in_use.q.out
ql/src/test/results/clientnegative/show_columns3.q.out
ql/src/test/results/clientpositive/add_part_exist.q.out
ql/src/test/results/clientpositive/alter1.q.out
ql/src/test/results/clientpositive/alter2.q.out
ql/src/test/results/clientpositive/alter3.q.out
ql/src/test/results/clientpositive/alter4.q.out
ql/src/test/results/clientpositive/alter5.q.out
ql/src/test/results/clientpositive/alter_rename_partition.q.out
ql/src/test/results/clientpositive/authorization_5.q.out
ql/src/test/results/clientpositive/ctas_uses_database_location.q.out
ql/src/test/results/clientpositive/database.q.out
ql/src/test/results/clientpositive/database_drop.q.out
ql/src/test/results/clientpositive/database_location.q.out
ql/src/test/results/clientpositive/database_properties.q.out
ql/src/test/results/clientpositive/describe_database_json.q.out
ql/src/test/results/clientpositive/describe_syntax.q.out
ql/src/test/results/clientpositive/drop_database_removes_partition_dirs.q.out
ql/src/test/results/clientpositive/exim_00_nonpart_empty.q.out
ql/src/test/results/clientpositive/exim_01_nonpart.q.out
ql/src/test/results/clientpositive/exim_02_00_part_empty.q.out
ql/src/test/results/clientpositive/exim_02_part.q.out
ql/src/test/results/clientpositive/exim_03_nonpart_over_compat.q.out
ql/src/test/results/clientpositive/exim_04_all_part.q.out
ql/src/test/results/clientpositive/exim_04_evolved_parts.q.out
ql/src/test/results/clientpositive/exim_05_some_part.q.out
ql/src/test/results/clientpositive/exim_06_one_part.q.out
ql/src/test/results/clientpositive/exim_07_all_part_over_nonoverlap.q.out
ql/src/test/results/clientpositive/exim_08_nonpart_rename.q.out
ql/src/test/results/clientpositive/exim_09_part_spec_nonoverlap.q.out
ql/src/test/results/clientpositive/exim_10_external_managed.q.out
ql/src/test/results/clientpositive/exim_11_managed_external.q.out
ql/src/test/results/clientpositive/exim_12_external_location.q.out
ql/src/test/results/clientpositive/exim_13_managed_location.q.out
ql/src/test/results/clientpositive/exim_14_managed_location_over_existing.q.out
ql/src/test/results/clientpositive/exim_15_external_part.q.out
ql/src/test/results/clientpositive/exim_16_part_external.q.out
ql/src/test/results/clientpositive/exim_17_part_managed.q.out
ql/src/test/results/clientpositive/exim_18_part_external.q.out
ql/src/test/results/clientpositive/exim_19_part_external_location.q.out
ql/src/test/results/clientpositive/exim_20_part_managed_location.q.out
ql/src/test/results/clientpositive/exim_22_import_exist_authsuccess.q.out
ql/src/test/results/clientpositive/exim_23_import_part_authsuccess.q.out
ql/src/test/results/clientpositive/exim_24_import_nonexist_authsuccess.q.out
ql/src/test/results/clientpositive/input46.q.out
ql/src/test/results/clientpositive/insert1.q.out
ql/src/test/results/clientpositive/insert2_overwrite_partitions.q.out
ql/src/test/results/clientpositive/rename_column.q.out
ql/src/test/results/clientpositive/show_columns.q.out
ql/src/test/results/clientpositive/show_create_table_db_table.q.out
ql/src/test/results/clientpositive/show_tables.q.out
ql/src/test/results/clientpositive/view.q.out
MANAGE HERALD RULES
https://reviews.facebook.net/herald/view/differential/
WHY DID I GET THIS EMAIL?
https://reviews.facebook.net/herald/transcript/30705/
To: JIRA, navis
> create/drop database should populate inputs/outputs and check concurrency and
> user permission
> ---------------------------------------------------------------------------------------------
>
> Key: HIVE-2093
> URL: https://issues.apache.org/jira/browse/HIVE-2093
> Project: Hive
> Issue Type: Bug
> Components: Authorization, Locking, Metastore, Security
> Reporter: Namit Jain
> Assignee: Siying Dong
> Attachments: HIVE.2093.1.patch, HIVE.2093.2.patch, HIVE.2093.3.patch,
> HIVE.2093.4.patch, HIVE.2093.5.patch, HIVE-2093.6.patch,
> HIVE-2093.D12807.1.patch
>
>
> concurrency and authorization are needed for create/drop table. Also to make
> concurrency work, it's better to have LOCK/UNLOCK DATABASE and SHOW LOCKS
> DATABASE
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira