diff --git a/itests/src/test/resources/testconfiguration.properties b/itests/src/test/resources/testconfiguration.properties index 96a03f6..a8df58a 100644 --- a/itests/src/test/resources/testconfiguration.properties +++ b/itests/src/test/resources/testconfiguration.properties @@ -524,20 +524,17 @@ minillap.query.files=acid_bucket_pruning.q,\ windowing_gby.q encrypted.query.files=encryption_join_unencrypted_tbl.q,\ - encryption_insert_partition_static.q,\ - encryption_insert_partition_dynamic.q,\ + encryption_insert_partition_dynamic_static.q,\ encryption_join_with_different_encryption_keys.q,\ encryption_select_read_only_encrypted_tbl.q,\ encryption_select_read_only_unencrypted_tbl.q,\ encryption_load_data_to_encrypted_tables.q, \ encryption_unencrypted_nonhdfs_external_tables.q \ encryption_move_tbl.q \ - encryption_drop_table.q \ + encryption_drop_partition_table_view.q\ encryption_insert_values.q \ - encryption_drop_view.q \ - encryption_drop_partition.q \ - encryption_with_trash.q \ - encryption_ctas.q + encryption_with_trash.q + beeline.positive.exclude=add_part_exist.q,\ alter1.q,\ diff --git a/itests/util/src/main/java/org/apache/hadoop/hive/cli/control/CoreCliDriver.java b/itests/util/src/main/java/org/apache/hadoop/hive/cli/control/CoreCliDriver.java index db58f1d..b2057e8 100644 --- a/itests/util/src/main/java/org/apache/hadoop/hive/cli/control/CoreCliDriver.java +++ b/itests/util/src/main/java/org/apache/hadoop/hive/cli/control/CoreCliDriver.java @@ -97,7 +97,7 @@ public void setUp() { new ElapsedTimeLoggingWrapper() { @Override public Void invokeInternal() throws Exception { - qt.clearTestSideEffects(); + // qt.clearTestSideEffects(); return null; } }.invoke("PerTestSetup done.", LOG, false); @@ -116,7 +116,7 @@ public void tearDown() { new ElapsedTimeLoggingWrapper() { @Override public Void invokeInternal() throws Exception { - qt.clearPostTestEffects(); + // qt.clearPostTestEffects(); return null; } }.invoke("PerTestTearDown done.", LOG, false); diff --git a/ql/src/test/queries/clientpositive/encryption_drop_partition.q b/ql/src/test/queries/clientpositive/encryption_drop_partition.q deleted file mode 100644 index d968459..0000000 --- a/ql/src/test/queries/clientpositive/encryption_drop_partition.q +++ /dev/null @@ -1,35 +0,0 @@ --- SORT_QUERY_RESULTS; - --- we're setting this so that TestNegaiveCliDriver.vm doesn't stop processing after DROP TABLE fails; - -set hive.cli.errors.ignore=true; -set hive.exec.dynamic.partition.mode=nonstrict; -set hive.mapred.mode=nonstrict; -DROP TABLE IF EXISTS encrypted_table_dp PURGE; -CREATE TABLE encrypted_table_dp (key INT, value STRING) partitioned by (p STRING) LOCATION '${hiveconf:hive.metastore.warehouse.dir}/default/encrypted_table_dp'; -CRYPTO CREATE_KEY --keyName key_128 --bitLength 128; -CRYPTO CREATE_ZONE --keyName key_128 --path ${hiveconf:hive.metastore.warehouse.dir}/default/encrypted_table_dp; - -INSERT INTO encrypted_table_dp PARTITION(p)(p,key,value) values('2014-09-23', 1, 'foo'),('2014-09-24', 2, 'bar'); -SELECT * FROM encrypted_table_dp; - -CREATE EXTERNAL TABLE encrypted_ext_table_dp (key INT, value STRING) partitioned by (p STRING) LOCATION '${hiveconf:hive.metastore.warehouse.dir}/default/encrypted_table_dp'; -ALTER TABLE encrypted_ext_table_dp ADD PARTITION (p='2014-09-23') LOCATION '${hiveconf:hive.metastore.warehouse.dir}/default/encrypted_table_dp/p=2014-09-23'; -SELECT * FROM encrypted_ext_table_dp; -ALTER TABLE encrypted_ext_table_dp DROP PARTITION (p='2014-09-23'); -SELECT * FROM encrypted_ext_table_dp; -DROP TABLE encrypted_ext_table_dp; - -SELECT * FROM encrypted_table_dp; -ALTER TABLE encrypted_table_dp DROP PARTITION (p='2014-09-23'); -SELECT * FROM encrypted_table_dp; -ALTER TABLE encrypted_table_dp DROP PARTITION (p='2014-09-23') PURGE; -SELECT * FROM encrypted_table_dp; - -TRUNCATE TABLE encrypted_table_dp PARTITION (p='2014-09-24'); -SHOW PARTITIONS encrypted_table_dp; -SELECT * FROM encrypted_table_dp; - -ALTER TABLE encrypted_table_dp DROP PARTITION (p='2014-09-24'); -DROP TABLE encrypted_table_dp; -DROP TABLE encrypted_table_dp PURGE; diff --git a/ql/src/test/queries/clientpositive/encryption_drop_table.q b/ql/src/test/queries/clientpositive/encryption_drop_table.q deleted file mode 100644 index 76be118..0000000 --- a/ql/src/test/queries/clientpositive/encryption_drop_table.q +++ /dev/null @@ -1,48 +0,0 @@ --- SORT_QUERY_RESULTS; - --- we're setting this so that TestNegaiveCliDriver.vm doesn't stop processing after DROP TABLE fails; - -set hive.cli.errors.ignore=true; - -DROP TABLE IF EXISTS encrypted_table PURGE; -DROP TABLE IF EXISTS encrypted_ext_table PURGE; - -CREATE TABLE encrypted_table (key INT, value STRING) LOCATION '${hiveconf:hive.metastore.warehouse.dir}/default/encrypted_table'; -CRYPTO CREATE_KEY --keyName key_128 --bitLength 128; -CRYPTO CREATE_ZONE --keyName key_128 --path ${hiveconf:hive.metastore.warehouse.dir}/default/encrypted_table; - -INSERT OVERWRITE TABLE encrypted_table SELECT * FROM src; - -CREATE EXTERNAL TABLE encrypted_ext_table (key INT, value STRING) LOCATION '${hiveconf:hive.metastore.warehouse.dir}/default/encrypted_table'; -SHOW TABLES; - -DROP TABLE default.encrypted_ext_table; -SHOW TABLES; - -DROP TABLE default.encrypted_table; -SHOW TABLES; - -DROP TABLE default.encrypted_table PURGE; -SHOW TABLES; - -DROP TABLE IF EXISTS encrypted_table1 PURGE; -CREATE TABLE encrypted_table1 (key INT, value STRING) LOCATION '${hiveconf:hive.metastore.warehouse.dir}/default/encrypted_table1'; -CRYPTO CREATE_ZONE --keyName key_128 --path ${hiveconf:hive.metastore.warehouse.dir}/default/encrypted_table1; -INSERT OVERWRITE TABLE encrypted_table1 SELECT * FROM src; - -SELECT COUNT(*) FROM encrypted_table1; -TRUNCATE TABLE encrypted_table1; -SELECT COUNT(*) FROM encrypted_table1; - -INSERT OVERWRITE TABLE encrypted_table1 SELECT * FROM src; -DROP TABLE default.encrypted_table1; -SHOW TABLES; - -TRUNCATE TABLE encrypted_table1; -DROP TABLE default.encrypted_table1; -SHOW TABLES; - -DROP TABLE default.encrypted_table1 PURGE; -SHOW TABLES; - -CRYPTO DELETE_KEY --keyName key_128; diff --git a/ql/src/test/queries/clientpositive/encryption_drop_view.q b/ql/src/test/queries/clientpositive/encryption_drop_view.q deleted file mode 100644 index 911583a..0000000 --- a/ql/src/test/queries/clientpositive/encryption_drop_view.q +++ /dev/null @@ -1,6 +0,0 @@ -DROP TABLE IF EXISTS dve_encrypted_table PURGE; -CREATE TABLE dve_encrypted_table (key INT, value STRING) LOCATION '${hiveconf:hive.metastore.warehouse.dir}/default/dve_encrypted_table'; -CRYPTO CREATE_KEY --keyName key_128 --bitLength 128; -CRYPTO CREATE_ZONE --keyName key_128 --path ${hiveconf:hive.metastore.warehouse.dir}/default/dve_encrypted_table; -CREATE VIEW dve_view AS SELECT * FROM dve_encrypted_table; -DROP VIEW dve_view; diff --git a/ql/src/test/queries/clientpositive/encryption_insert_partition_dynamic_static.q b/ql/src/test/queries/clientpositive/encryption_insert_partition_dynamic_static.q new file mode 100644 index 0000000..c8c73a0 --- /dev/null +++ b/ql/src/test/queries/clientpositive/encryption_insert_partition_dynamic_static.q @@ -0,0 +1,46 @@ +set hive.exec.dynamic.partition.mode=nonstrict; +set hive.mapred.mode=nonstrict; +set hive.support.concurrency=true; +set hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager; + + +-- SORT_QUERY_RESULTS + +-- init +drop table IF EXISTS encryptedTable PURGE; +drop table IF EXISTS unencryptedTable PURGE; + +create table encryptedTable(value string) + partitioned by (key string) clustered by (value) into 2 buckets stored as orc + LOCATION '${hiveconf:hive.metastore.warehouse.dir}/encryptedTable' TBLPROPERTIES ('transactional'='true'); +CRYPTO CREATE_KEY --keyName key_1 --bitLength 128; +CRYPTO CREATE_ZONE --keyName key_1 --path ${hiveconf:hive.metastore.warehouse.dir}/encryptedTable; + +create table unencryptedTable(value string) + partitioned by (key string) clustered by (value) into 2 buckets stored as orc TBLPROPERTIES ('transactional'='true'); + +-- insert encrypted table from values +insert into table encryptedTable partition (key) values + ('val_501', '501'), + ('val_502', '502'); + +select * from encryptedTable order by key; + +-- insert encrypted table from unencrypted source +from src +insert into table encryptedTable partition (key) + select value, key limit 2; + +select * from encryptedTable order by key; + +-- insert unencrypted table from encrypted source +from encryptedTable +insert into table unencryptedTable partition (key) + select value, key; + +select * from unencryptedTable order by key; + +drop table encryptedTable PURGE; +CRYPTO DELETE_KEY --keyName key_1; +drop table unencryptedTable PURGE; + diff --git a/ql/src/test/queries/clientpositive/encryption_insert_values.q b/ql/src/test/queries/clientpositive/encryption_insert_values.q deleted file mode 100644 index 2dd3e9a..0000000 --- a/ql/src/test/queries/clientpositive/encryption_insert_values.q +++ /dev/null @@ -1,15 +0,0 @@ --- SORT_QUERY_RESULTS; - -DROP TABLE IF EXISTS encrypted_table PURGE; -CREATE TABLE encrypted_table (key INT, value STRING) LOCATION '${hiveconf:hive.metastore.warehouse.dir}/default/encrypted_table'; -CRYPTO CREATE_KEY --keyName key_128 --bitLength 128; -CRYPTO CREATE_ZONE --keyName key_128 --path ${hiveconf:hive.metastore.warehouse.dir}/default/encrypted_table; - -INSERT INTO encrypted_table values(1,'foo'),(2,'bar'); - -select * from encrypted_table; - --- this checks that we've actually created temp table data under encrypted_table folder -describe formatted values__tmp__table__1; - -CRYPTO DELETE_KEY --keyName key_128; \ No newline at end of file diff --git a/ql/src/test/results/clientpositive/encrypted/encryption_drop_partition.q.out b/ql/src/test/results/clientpositive/encrypted/encryption_drop_partition.q.out deleted file mode 100644 index c2f6b03..0000000 --- a/ql/src/test/results/clientpositive/encrypted/encryption_drop_partition.q.out +++ /dev/null @@ -1,190 +0,0 @@ -PREHOOK: query: DROP TABLE IF EXISTS encrypted_table_dp PURGE -PREHOOK: type: DROPTABLE -POSTHOOK: query: DROP TABLE IF EXISTS encrypted_table_dp PURGE -POSTHOOK: type: DROPTABLE -#### A masked pattern was here #### -PREHOOK: type: CREATETABLE -#### A masked pattern was here #### -PREHOOK: Output: database:default -PREHOOK: Output: default@encrypted_table_dp -#### A masked pattern was here #### -POSTHOOK: type: CREATETABLE -#### A masked pattern was here #### -POSTHOOK: Output: database:default -POSTHOOK: Output: default@encrypted_table_dp -Encryption key created: 'key_128' -Encryption zone created: '/build/ql/test/data/warehouse/default/encrypted_table_dp' using key: 'key_128' -PREHOOK: query: INSERT INTO encrypted_table_dp PARTITION(p)(p,key,value) values('2014-09-23', 1, 'foo'),('2014-09-24', 2, 'bar') -PREHOOK: type: QUERY -PREHOOK: Input: default@values__tmp__table__1 -PREHOOK: Output: default@encrypted_table_dp -POSTHOOK: query: INSERT INTO encrypted_table_dp PARTITION(p)(p,key,value) values('2014-09-23', 1, 'foo'),('2014-09-24', 2, 'bar') -POSTHOOK: type: QUERY -POSTHOOK: Input: default@values__tmp__table__1 -POSTHOOK: Output: default@encrypted_table_dp@p=2014-09-23 -POSTHOOK: Output: default@encrypted_table_dp@p=2014-09-24 -POSTHOOK: Lineage: encrypted_table_dp PARTITION(p=2014-09-23).key EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ] -POSTHOOK: Lineage: encrypted_table_dp PARTITION(p=2014-09-23).value SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ] -POSTHOOK: Lineage: encrypted_table_dp PARTITION(p=2014-09-24).key EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ] -POSTHOOK: Lineage: encrypted_table_dp PARTITION(p=2014-09-24).value SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col3, type:string, comment:), ] -PREHOOK: query: SELECT * FROM encrypted_table_dp -PREHOOK: type: QUERY -PREHOOK: Input: default@encrypted_table_dp -PREHOOK: Input: default@encrypted_table_dp@p=2014-09-23 -PREHOOK: Input: default@encrypted_table_dp@p=2014-09-24 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -POSTHOOK: query: SELECT * FROM encrypted_table_dp -POSTHOOK: type: QUERY -POSTHOOK: Input: default@encrypted_table_dp -POSTHOOK: Input: default@encrypted_table_dp@p=2014-09-23 -POSTHOOK: Input: default@encrypted_table_dp@p=2014-09-24 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -1 foo 2014-09-23 -2 bar 2014-09-24 -#### A masked pattern was here #### -PREHOOK: type: CREATETABLE -#### A masked pattern was here #### -PREHOOK: Output: database:default -PREHOOK: Output: default@encrypted_ext_table_dp -#### A masked pattern was here #### -POSTHOOK: type: CREATETABLE -#### A masked pattern was here #### -POSTHOOK: Output: database:default -POSTHOOK: Output: default@encrypted_ext_table_dp -#### A masked pattern was here #### -PREHOOK: type: ALTERTABLE_ADDPARTS -#### A masked pattern was here #### -PREHOOK: Output: default@encrypted_ext_table_dp -#### A masked pattern was here #### -POSTHOOK: type: ALTERTABLE_ADDPARTS -#### A masked pattern was here #### -POSTHOOK: Output: default@encrypted_ext_table_dp -POSTHOOK: Output: default@encrypted_ext_table_dp@p=2014-09-23 -PREHOOK: query: SELECT * FROM encrypted_ext_table_dp -PREHOOK: type: QUERY -PREHOOK: Input: default@encrypted_ext_table_dp -PREHOOK: Input: default@encrypted_ext_table_dp@p=2014-09-23 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -POSTHOOK: query: SELECT * FROM encrypted_ext_table_dp -POSTHOOK: type: QUERY -POSTHOOK: Input: default@encrypted_ext_table_dp -POSTHOOK: Input: default@encrypted_ext_table_dp@p=2014-09-23 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -1 foo 2014-09-23 -PREHOOK: query: ALTER TABLE encrypted_ext_table_dp DROP PARTITION (p='2014-09-23') -PREHOOK: type: ALTERTABLE_DROPPARTS -PREHOOK: Input: default@encrypted_ext_table_dp -PREHOOK: Output: default@encrypted_ext_table_dp@p=2014-09-23 -POSTHOOK: query: ALTER TABLE encrypted_ext_table_dp DROP PARTITION (p='2014-09-23') -POSTHOOK: type: ALTERTABLE_DROPPARTS -POSTHOOK: Input: default@encrypted_ext_table_dp -POSTHOOK: Output: default@encrypted_ext_table_dp@p=2014-09-23 -PREHOOK: query: SELECT * FROM encrypted_ext_table_dp -PREHOOK: type: QUERY -PREHOOK: Input: default@encrypted_ext_table_dp -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -POSTHOOK: query: SELECT * FROM encrypted_ext_table_dp -POSTHOOK: type: QUERY -POSTHOOK: Input: default@encrypted_ext_table_dp -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -PREHOOK: query: DROP TABLE encrypted_ext_table_dp -PREHOOK: type: DROPTABLE -PREHOOK: Input: default@encrypted_ext_table_dp -PREHOOK: Output: default@encrypted_ext_table_dp -POSTHOOK: query: DROP TABLE encrypted_ext_table_dp -POSTHOOK: type: DROPTABLE -POSTHOOK: Input: default@encrypted_ext_table_dp -POSTHOOK: Output: default@encrypted_ext_table_dp -PREHOOK: query: SELECT * FROM encrypted_table_dp -PREHOOK: type: QUERY -PREHOOK: Input: default@encrypted_table_dp -PREHOOK: Input: default@encrypted_table_dp@p=2014-09-23 -PREHOOK: Input: default@encrypted_table_dp@p=2014-09-24 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -POSTHOOK: query: SELECT * FROM encrypted_table_dp -POSTHOOK: type: QUERY -POSTHOOK: Input: default@encrypted_table_dp -POSTHOOK: Input: default@encrypted_table_dp@p=2014-09-23 -POSTHOOK: Input: default@encrypted_table_dp@p=2014-09-24 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -1 foo 2014-09-23 -2 bar 2014-09-24 -PREHOOK: query: ALTER TABLE encrypted_table_dp DROP PARTITION (p='2014-09-23') -PREHOOK: type: ALTERTABLE_DROPPARTS -PREHOOK: Input: default@encrypted_table_dp -PREHOOK: Output: default@encrypted_table_dp@p=2014-09-23 -FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to drop default.encrypted_table_dp.[2014-09-23] because it is in an encryption zone and trash is enabled. Use PURGE option to skip trash. -PREHOOK: query: SELECT * FROM encrypted_table_dp -PREHOOK: type: QUERY -PREHOOK: Input: default@encrypted_table_dp -PREHOOK: Input: default@encrypted_table_dp@p=2014-09-23 -PREHOOK: Input: default@encrypted_table_dp@p=2014-09-24 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -POSTHOOK: query: SELECT * FROM encrypted_table_dp -POSTHOOK: type: QUERY -POSTHOOK: Input: default@encrypted_table_dp -POSTHOOK: Input: default@encrypted_table_dp@p=2014-09-23 -POSTHOOK: Input: default@encrypted_table_dp@p=2014-09-24 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -1 foo 2014-09-23 -2 bar 2014-09-24 -PREHOOK: query: ALTER TABLE encrypted_table_dp DROP PARTITION (p='2014-09-23') PURGE -PREHOOK: type: ALTERTABLE_DROPPARTS -PREHOOK: Input: default@encrypted_table_dp -PREHOOK: Output: default@encrypted_table_dp@p=2014-09-23 -POSTHOOK: query: ALTER TABLE encrypted_table_dp DROP PARTITION (p='2014-09-23') PURGE -POSTHOOK: type: ALTERTABLE_DROPPARTS -POSTHOOK: Input: default@encrypted_table_dp -POSTHOOK: Output: default@encrypted_table_dp@p=2014-09-23 -PREHOOK: query: SELECT * FROM encrypted_table_dp -PREHOOK: type: QUERY -PREHOOK: Input: default@encrypted_table_dp -PREHOOK: Input: default@encrypted_table_dp@p=2014-09-24 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -POSTHOOK: query: SELECT * FROM encrypted_table_dp -POSTHOOK: type: QUERY -POSTHOOK: Input: default@encrypted_table_dp -POSTHOOK: Input: default@encrypted_table_dp@p=2014-09-24 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -2 bar 2014-09-24 -PREHOOK: query: TRUNCATE TABLE encrypted_table_dp PARTITION (p='2014-09-24') -PREHOOK: type: TRUNCATETABLE -PREHOOK: Output: default@encrypted_table_dp@p=2014-09-24 -POSTHOOK: query: TRUNCATE TABLE encrypted_table_dp PARTITION (p='2014-09-24') -POSTHOOK: type: TRUNCATETABLE -POSTHOOK: Output: default@encrypted_table_dp@p=2014-09-24 -PREHOOK: query: SHOW PARTITIONS encrypted_table_dp -PREHOOK: type: SHOWPARTITIONS -PREHOOK: Input: default@encrypted_table_dp -POSTHOOK: query: SHOW PARTITIONS encrypted_table_dp -POSTHOOK: type: SHOWPARTITIONS -POSTHOOK: Input: default@encrypted_table_dp -p=2014-09-24 -PREHOOK: query: SELECT * FROM encrypted_table_dp -PREHOOK: type: QUERY -PREHOOK: Input: default@encrypted_table_dp -PREHOOK: Input: default@encrypted_table_dp@p=2014-09-24 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -POSTHOOK: query: SELECT * FROM encrypted_table_dp -POSTHOOK: type: QUERY -POSTHOOK: Input: default@encrypted_table_dp -POSTHOOK: Input: default@encrypted_table_dp@p=2014-09-24 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table_dp/.hive-staging -PREHOOK: query: ALTER TABLE encrypted_table_dp DROP PARTITION (p='2014-09-24') -PREHOOK: type: ALTERTABLE_DROPPARTS -PREHOOK: Input: default@encrypted_table_dp -PREHOOK: Output: default@encrypted_table_dp@p=2014-09-24 -FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Unable to drop default.encrypted_table_dp.[2014-09-24] because it is in an encryption zone and trash is enabled. Use PURGE option to skip trash. -PREHOOK: query: DROP TABLE encrypted_table_dp -PREHOOK: type: DROPTABLE -PREHOOK: Input: default@encrypted_table_dp -PREHOOK: Output: default@encrypted_table_dp -FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:Unable to drop default.encrypted_table_dp because it is in an encryption zone and trash is enabled. Use PURGE option to skip trash.) -PREHOOK: query: DROP TABLE encrypted_table_dp PURGE -PREHOOK: type: DROPTABLE -PREHOOK: Input: default@encrypted_table_dp -PREHOOK: Output: default@encrypted_table_dp -POSTHOOK: query: DROP TABLE encrypted_table_dp PURGE -POSTHOOK: type: DROPTABLE -POSTHOOK: Input: default@encrypted_table_dp -POSTHOOK: Output: default@encrypted_table_dp diff --git a/ql/src/test/results/clientpositive/encrypted/encryption_drop_table.q.out b/ql/src/test/results/clientpositive/encrypted/encryption_drop_table.q.out deleted file mode 100644 index a3f41d8..0000000 --- a/ql/src/test/results/clientpositive/encrypted/encryption_drop_table.q.out +++ /dev/null @@ -1,199 +0,0 @@ -PREHOOK: query: DROP TABLE IF EXISTS encrypted_table PURGE -PREHOOK: type: DROPTABLE -POSTHOOK: query: DROP TABLE IF EXISTS encrypted_table PURGE -POSTHOOK: type: DROPTABLE -PREHOOK: query: DROP TABLE IF EXISTS encrypted_ext_table PURGE -PREHOOK: type: DROPTABLE -POSTHOOK: query: DROP TABLE IF EXISTS encrypted_ext_table PURGE -POSTHOOK: type: DROPTABLE -#### A masked pattern was here #### -PREHOOK: type: CREATETABLE -#### A masked pattern was here #### -PREHOOK: Output: database:default -PREHOOK: Output: default@encrypted_table -#### A masked pattern was here #### -POSTHOOK: type: CREATETABLE -#### A masked pattern was here #### -POSTHOOK: Output: database:default -POSTHOOK: Output: default@encrypted_table -Encryption key created: 'key_128' -Encryption zone created: '/build/ql/test/data/warehouse/default/encrypted_table' using key: 'key_128' -PREHOOK: query: INSERT OVERWRITE TABLE encrypted_table SELECT * FROM src -PREHOOK: type: QUERY -PREHOOK: Input: default@src -PREHOOK: Output: default@encrypted_table -POSTHOOK: query: INSERT OVERWRITE TABLE encrypted_table SELECT * FROM src -POSTHOOK: type: QUERY -POSTHOOK: Input: default@src -POSTHOOK: Output: default@encrypted_table -POSTHOOK: Lineage: encrypted_table.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: encrypted_table.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ] -#### A masked pattern was here #### -PREHOOK: type: CREATETABLE -#### A masked pattern was here #### -PREHOOK: Output: database:default -PREHOOK: Output: default@encrypted_ext_table -#### A masked pattern was here #### -POSTHOOK: type: CREATETABLE -#### A masked pattern was here #### -POSTHOOK: Output: database:default -POSTHOOK: Output: default@encrypted_ext_table -PREHOOK: query: SHOW TABLES -PREHOOK: type: SHOWTABLES -PREHOOK: Input: database:default -POSTHOOK: query: SHOW TABLES -POSTHOOK: type: SHOWTABLES -POSTHOOK: Input: database:default -encrypted_ext_table -encrypted_table -src -PREHOOK: query: DROP TABLE default.encrypted_ext_table -PREHOOK: type: DROPTABLE -PREHOOK: Input: default@encrypted_ext_table -PREHOOK: Output: default@encrypted_ext_table -POSTHOOK: query: DROP TABLE default.encrypted_ext_table -POSTHOOK: type: DROPTABLE -POSTHOOK: Input: default@encrypted_ext_table -POSTHOOK: Output: default@encrypted_ext_table -PREHOOK: query: SHOW TABLES -PREHOOK: type: SHOWTABLES -PREHOOK: Input: database:default -POSTHOOK: query: SHOW TABLES -POSTHOOK: type: SHOWTABLES -POSTHOOK: Input: database:default -encrypted_table -src -PREHOOK: query: DROP TABLE default.encrypted_table -PREHOOK: type: DROPTABLE -PREHOOK: Input: default@encrypted_table -PREHOOK: Output: default@encrypted_table -FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:Unable to drop default.encrypted_table because it is in an encryption zone and trash is enabled. Use PURGE option to skip trash.) -PREHOOK: query: SHOW TABLES -PREHOOK: type: SHOWTABLES -PREHOOK: Input: database:default -POSTHOOK: query: SHOW TABLES -POSTHOOK: type: SHOWTABLES -POSTHOOK: Input: database:default -encrypted_table -src -PREHOOK: query: DROP TABLE default.encrypted_table PURGE -PREHOOK: type: DROPTABLE -PREHOOK: Input: default@encrypted_table -PREHOOK: Output: default@encrypted_table -POSTHOOK: query: DROP TABLE default.encrypted_table PURGE -POSTHOOK: type: DROPTABLE -POSTHOOK: Input: default@encrypted_table -POSTHOOK: Output: default@encrypted_table -PREHOOK: query: SHOW TABLES -PREHOOK: type: SHOWTABLES -PREHOOK: Input: database:default -POSTHOOK: query: SHOW TABLES -POSTHOOK: type: SHOWTABLES -POSTHOOK: Input: database:default -src -PREHOOK: query: DROP TABLE IF EXISTS encrypted_table1 PURGE -PREHOOK: type: DROPTABLE -POSTHOOK: query: DROP TABLE IF EXISTS encrypted_table1 PURGE -POSTHOOK: type: DROPTABLE -#### A masked pattern was here #### -PREHOOK: type: CREATETABLE -#### A masked pattern was here #### -PREHOOK: Output: database:default -PREHOOK: Output: default@encrypted_table1 -#### A masked pattern was here #### -POSTHOOK: type: CREATETABLE -#### A masked pattern was here #### -POSTHOOK: Output: database:default -POSTHOOK: Output: default@encrypted_table1 -Encryption zone created: '/build/ql/test/data/warehouse/default/encrypted_table1' using key: 'key_128' -PREHOOK: query: INSERT OVERWRITE TABLE encrypted_table1 SELECT * FROM src -PREHOOK: type: QUERY -PREHOOK: Input: default@src -PREHOOK: Output: default@encrypted_table1 -POSTHOOK: query: INSERT OVERWRITE TABLE encrypted_table1 SELECT * FROM src -POSTHOOK: type: QUERY -POSTHOOK: Input: default@src -POSTHOOK: Output: default@encrypted_table1 -POSTHOOK: Lineage: encrypted_table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: encrypted_table1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ] -PREHOOK: query: SELECT COUNT(*) FROM encrypted_table1 -PREHOOK: type: QUERY -PREHOOK: Input: default@encrypted_table1 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table1/.hive-staging -POSTHOOK: query: SELECT COUNT(*) FROM encrypted_table1 -POSTHOOK: type: QUERY -POSTHOOK: Input: default@encrypted_table1 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table1/.hive-staging -500 -PREHOOK: query: TRUNCATE TABLE encrypted_table1 -PREHOOK: type: TRUNCATETABLE -PREHOOK: Output: default@encrypted_table1 -POSTHOOK: query: TRUNCATE TABLE encrypted_table1 -POSTHOOK: type: TRUNCATETABLE -POSTHOOK: Output: default@encrypted_table1 -PREHOOK: query: SELECT COUNT(*) FROM encrypted_table1 -PREHOOK: type: QUERY -PREHOOK: Input: default@encrypted_table1 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table1/.hive-staging -POSTHOOK: query: SELECT COUNT(*) FROM encrypted_table1 -POSTHOOK: type: QUERY -POSTHOOK: Input: default@encrypted_table1 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table1/.hive-staging -0 -PREHOOK: query: INSERT OVERWRITE TABLE encrypted_table1 SELECT * FROM src -PREHOOK: type: QUERY -PREHOOK: Input: default@src -PREHOOK: Output: default@encrypted_table1 -POSTHOOK: query: INSERT OVERWRITE TABLE encrypted_table1 SELECT * FROM src -POSTHOOK: type: QUERY -POSTHOOK: Input: default@src -POSTHOOK: Output: default@encrypted_table1 -POSTHOOK: Lineage: encrypted_table1.key EXPRESSION [(src)src.FieldSchema(name:key, type:string, comment:default), ] -POSTHOOK: Lineage: encrypted_table1.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:default), ] -PREHOOK: query: DROP TABLE default.encrypted_table1 -PREHOOK: type: DROPTABLE -PREHOOK: Input: default@encrypted_table1 -PREHOOK: Output: default@encrypted_table1 -FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:Unable to drop default.encrypted_table1 because it is in an encryption zone and trash is enabled. Use PURGE option to skip trash.) -PREHOOK: query: SHOW TABLES -PREHOOK: type: SHOWTABLES -PREHOOK: Input: database:default -POSTHOOK: query: SHOW TABLES -POSTHOOK: type: SHOWTABLES -POSTHOOK: Input: database:default -encrypted_table1 -src -PREHOOK: query: TRUNCATE TABLE encrypted_table1 -PREHOOK: type: TRUNCATETABLE -PREHOOK: Output: default@encrypted_table1 -POSTHOOK: query: TRUNCATE TABLE encrypted_table1 -POSTHOOK: type: TRUNCATETABLE -POSTHOOK: Output: default@encrypted_table1 -PREHOOK: query: DROP TABLE default.encrypted_table1 -PREHOOK: type: DROPTABLE -PREHOOK: Input: default@encrypted_table1 -PREHOOK: Output: default@encrypted_table1 -FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:Unable to drop default.encrypted_table1 because it is in an encryption zone and trash is enabled. Use PURGE option to skip trash.) -PREHOOK: query: SHOW TABLES -PREHOOK: type: SHOWTABLES -PREHOOK: Input: database:default -POSTHOOK: query: SHOW TABLES -POSTHOOK: type: SHOWTABLES -POSTHOOK: Input: database:default -encrypted_table1 -src -PREHOOK: query: DROP TABLE default.encrypted_table1 PURGE -PREHOOK: type: DROPTABLE -PREHOOK: Input: default@encrypted_table1 -PREHOOK: Output: default@encrypted_table1 -POSTHOOK: query: DROP TABLE default.encrypted_table1 PURGE -POSTHOOK: type: DROPTABLE -POSTHOOK: Input: default@encrypted_table1 -POSTHOOK: Output: default@encrypted_table1 -PREHOOK: query: SHOW TABLES -PREHOOK: type: SHOWTABLES -PREHOOK: Input: database:default -POSTHOOK: query: SHOW TABLES -POSTHOOK: type: SHOWTABLES -POSTHOOK: Input: database:default -src diff --git a/ql/src/test/results/clientpositive/encrypted/encryption_drop_view.q.out b/ql/src/test/results/clientpositive/encrypted/encryption_drop_view.q.out deleted file mode 100644 index 7958b39..0000000 --- a/ql/src/test/results/clientpositive/encrypted/encryption_drop_view.q.out +++ /dev/null @@ -1,34 +0,0 @@ -PREHOOK: query: DROP TABLE IF EXISTS dve_encrypted_table PURGE -PREHOOK: type: DROPTABLE -POSTHOOK: query: DROP TABLE IF EXISTS dve_encrypted_table PURGE -POSTHOOK: type: DROPTABLE -#### A masked pattern was here #### -PREHOOK: type: CREATETABLE -#### A masked pattern was here #### -PREHOOK: Output: database:default -PREHOOK: Output: default@dve_encrypted_table -#### A masked pattern was here #### -POSTHOOK: type: CREATETABLE -#### A masked pattern was here #### -POSTHOOK: Output: database:default -POSTHOOK: Output: default@dve_encrypted_table -Encryption key created: 'key_128' -Encryption zone created: '/build/ql/test/data/warehouse/default/dve_encrypted_table' using key: 'key_128' -PREHOOK: query: CREATE VIEW dve_view AS SELECT * FROM dve_encrypted_table -PREHOOK: type: CREATEVIEW -PREHOOK: Input: default@dve_encrypted_table -PREHOOK: Output: database:default -PREHOOK: Output: default@dve_view -POSTHOOK: query: CREATE VIEW dve_view AS SELECT * FROM dve_encrypted_table -POSTHOOK: type: CREATEVIEW -POSTHOOK: Input: default@dve_encrypted_table -POSTHOOK: Output: database:default -POSTHOOK: Output: default@dve_view -PREHOOK: query: DROP VIEW dve_view -PREHOOK: type: DROPVIEW -PREHOOK: Input: default@dve_view -PREHOOK: Output: default@dve_view -POSTHOOK: query: DROP VIEW dve_view -POSTHOOK: type: DROPVIEW -POSTHOOK: Input: default@dve_view -POSTHOOK: Output: default@dve_view diff --git a/ql/src/test/results/clientpositive/encrypted/encryption_insert_values.q.out b/ql/src/test/results/clientpositive/encrypted/encryption_insert_values.q.out deleted file mode 100644 index c1cbf30..0000000 --- a/ql/src/test/results/clientpositive/encrypted/encryption_insert_values.q.out +++ /dev/null @@ -1,70 +0,0 @@ -PREHOOK: query: -- SORT_QUERY_RESULTS; - -DROP TABLE IF EXISTS encrypted_table PURGE -PREHOOK: type: DROPTABLE -POSTHOOK: query: -- SORT_QUERY_RESULTS; - -DROP TABLE IF EXISTS encrypted_table PURGE -POSTHOOK: type: DROPTABLE -#### A masked pattern was here #### -PREHOOK: type: CREATETABLE -#### A masked pattern was here #### -PREHOOK: Output: database:default -PREHOOK: Output: default@encrypted_table -#### A masked pattern was here #### -POSTHOOK: type: CREATETABLE -#### A masked pattern was here #### -POSTHOOK: Output: database:default -POSTHOOK: Output: default@encrypted_table -Encryption key created: 'key_128' -Encryption zone created: '/build/ql/test/data/warehouse/default/encrypted_table' using key: 'key_128' -PREHOOK: query: INSERT INTO encrypted_table values(1,'foo'),(2,'bar') -PREHOOK: type: QUERY -PREHOOK: Input: default@values__tmp__table__1 -PREHOOK: Output: default@encrypted_table -POSTHOOK: query: INSERT INTO encrypted_table values(1,'foo'),(2,'bar') -POSTHOOK: type: QUERY -POSTHOOK: Input: default@values__tmp__table__1 -POSTHOOK: Output: default@encrypted_table -POSTHOOK: Lineage: encrypted_table.key EXPRESSION [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col1, type:string, comment:), ] -POSTHOOK: Lineage: encrypted_table.value SIMPLE [(values__tmp__table__1)values__tmp__table__1.FieldSchema(name:tmp_values_col2, type:string, comment:), ] -PREHOOK: query: select * from encrypted_table -PREHOOK: type: QUERY -PREHOOK: Input: default@encrypted_table -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table/.hive-staging -POSTHOOK: query: select * from encrypted_table -POSTHOOK: type: QUERY -POSTHOOK: Input: default@encrypted_table -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table/.hive-staging -1 foo -2 bar -PREHOOK: query: -- this checks that we've actually created temp table data under encrypted_table folder -describe formatted values__tmp__table__1 -PREHOOK: type: DESCTABLE -PREHOOK: Input: default@values__tmp__table__1 -POSTHOOK: query: -- this checks that we've actually created temp table data under encrypted_table folder -describe formatted values__tmp__table__1 -POSTHOOK: type: DESCTABLE -POSTHOOK: Input: default@values__tmp__table__1 -# col_name data_type comment - -tmp_values_col1 string -tmp_values_col2 string - -# Detailed Table Information -Database: default -#### A masked pattern was here #### -Retention: 0 -#### A PARTIAL masked pattern was here #### data/warehouse/default/encrypted_table/.hive-staging -Table Type: MANAGED_TABLE - -# Storage Information -SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe -InputFormat: org.apache.hadoop.mapred.TextInputFormat -OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat -Compressed: No -Num Buckets: -1 -Bucket Columns: [] -Sort Columns: [] -Storage Desc Params: - serialization.format 1 diff --git a/ql/src/test/results/clientpositive/encrypted/encryption_move_tbl.q.out b/ql/src/test/results/clientpositive/encrypted/encryption_move_tbl.q.out index 910ce25..552d65d 100644 --- a/ql/src/test/results/clientpositive/encrypted/encryption_move_tbl.q.out +++ b/ql/src/test/results/clientpositive/encrypted/encryption_move_tbl.q.out @@ -45,6 +45,8 @@ POSTHOOK: type: SHOWTABLES POSTHOOK: Input: database:default encrypted_table src +table_key_1 +table_key_2 PREHOOK: query: -- should fail ALTER TABLE default.encrypted_table RENAME TO encrypted_db.encrypted_table_2 PREHOOK: type: ALTERTABLE_RENAME @@ -59,6 +61,8 @@ POSTHOOK: type: SHOWTABLES POSTHOOK: Input: database:default encrypted_table src +table_key_1 +table_key_2 PREHOOK: query: -- should succeed in Hadoop 2.7 but fail in 2.6 (HDFS-7530) ALTER TABLE default.encrypted_table RENAME TO default.plain_table PREHOOK: type: ALTERTABLE_RENAME @@ -78,6 +82,8 @@ POSTHOOK: type: SHOWTABLES POSTHOOK: Input: database:default plain_table src +table_key_1 +table_key_2 PREHOOK: query: DROP TABLE encrypted_table PURGE PREHOOK: type: DROPTABLE POSTHOOK: query: DROP TABLE encrypted_table PURGE