diff --git itests/src/test/resources/testconfiguration.properties itests/src/test/resources/testconfiguration.properties index ea288e8..14a6f7b 100644 --- itests/src/test/resources/testconfiguration.properties +++ itests/src/test/resources/testconfiguration.properties @@ -271,7 +271,8 @@ minitez.query.files=bucket_map_join_tez1.q,\ tez_smb_1.q,\ vectorized_dynamic_partition_pruning.q -encrypted.query.files.shared=join_unencrypted_encrypted_tbls.q +encrypted.query.files.shared=join_unencrypted_encrypted_tbls.q\ + join_encrypted_tbls_in_different_length_of_keys.q beeline.positive.exclude=add_part_exist.q,\ alter1.q,\ diff --git ql/src/test/queries/clientpositive/join_encrypted_tbls_in_different_length_of_keys.q ql/src/test/queries/clientpositive/join_encrypted_tbls_in_different_length_of_keys.q new file mode 100644 index 0000000..55d6051 --- /dev/null +++ ql/src/test/queries/clientpositive/join_encrypted_tbls_in_different_length_of_keys.q @@ -0,0 +1,10 @@ +create table encryptedWith128BitsKeyDB.encryptedTableIn128BitsKey(id int, value String); + +insert overwrite table encryptedWith128BitsKeyDB.encryptedTableIn128BitsKey select * from src; + +create table encryptedWith256BitsKeyDB.encryptedTableIn256BitsKey(id int, value String); + +insert overwrite table encryptedWith256BitsKeyDB.encryptedTableIn256BitsKey select * from src; + +select * from encryptedWith256BitsKeyDB.encryptedTableIn256BitsKey t1 +join encryptedWith128BitsKeyDB.encryptedTableIn128BitsKey t2 where t1.id = t2.id; \ No newline at end of file diff --git ql/src/test/results/clientpositive/encrypted/join_encrypted_tbls_in_different_length_of_keys.q.out ql/src/test/results/clientpositive/encrypted/join_encrypted_tbls_in_different_length_of_keys.q.out new file mode 100644 index 0000000..eaf18e9 --- /dev/null +++ ql/src/test/results/clientpositive/encrypted/join_encrypted_tbls_in_different_length_of_keys.q.out @@ -0,0 +1,52 @@ +PREHOOK: query: create table encryptedWith128BitsKeyDB.encryptedTableIn128BitsKey(id int, value String) +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:encryptedwith128bitskeydb +PREHOOK: Output: encryptedWith128BitsKeyDB@encryptedTableIn128BitsKey +POSTHOOK: query: create table encryptedWith128BitsKeyDB.encryptedTableIn128BitsKey(id int, value String) +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:encryptedwith128bitskeydb +POSTHOOK: Output: encryptedWith128BitsKeyDB@encryptedTableIn128BitsKey +PREHOOK: query: insert overwrite table encryptedWith128BitsKeyDB.encryptedTableIn128BitsKey select * from src +PREHOOK: type: QUERY +PREHOOK: Input: default@src +PREHOOK: Output: encryptedwith128bitskeydb@encryptedtablein128bitskey +POSTHOOK: query: insert overwrite table encryptedWith128BitsKeyDB.encryptedTableIn128BitsKey select * from src +POSTHOOK: type: QUERY +POSTHOOK: Input: default@src +POSTHOOK: Output: encryptedwith128bitskeydb@encryptedtablein128bitskey +POSTHOOK: Lineage: encryptedtablein128bitskey.id SIMPLE [(src)src.FieldSchema(name:id, type:int, comment:null), ] +POSTHOOK: Lineage: encryptedtablein128bitskey.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:null), ] +PREHOOK: query: create table encryptedWith256BitsKeyDB.encryptedTableIn256BitsKey(id int, value String) +PREHOOK: type: CREATETABLE +PREHOOK: Output: database:encryptedwith256bitskeydb +PREHOOK: Output: encryptedWith256BitsKeyDB@encryptedTableIn256BitsKey +POSTHOOK: query: create table encryptedWith256BitsKeyDB.encryptedTableIn256BitsKey(id int, value String) +POSTHOOK: type: CREATETABLE +POSTHOOK: Output: database:encryptedwith256bitskeydb +POSTHOOK: Output: encryptedWith256BitsKeyDB@encryptedTableIn256BitsKey +PREHOOK: query: insert overwrite table encryptedWith256BitsKeyDB.encryptedTableIn256BitsKey select * from src +PREHOOK: type: QUERY +PREHOOK: Input: default@src +PREHOOK: Output: encryptedwith256bitskeydb@encryptedtablein256bitskey +POSTHOOK: query: insert overwrite table encryptedWith256BitsKeyDB.encryptedTableIn256BitsKey select * from src +POSTHOOK: type: QUERY +POSTHOOK: Input: default@src +POSTHOOK: Output: encryptedwith256bitskeydb@encryptedtablein256bitskey +POSTHOOK: Lineage: encryptedtablein256bitskey.id SIMPLE [(src)src.FieldSchema(name:id, type:int, comment:null), ] +POSTHOOK: Lineage: encryptedtablein256bitskey.value SIMPLE [(src)src.FieldSchema(name:value, type:string, comment:null), ] +PREHOOK: query: select * from encryptedWith256BitsKeyDB.encryptedTableIn256BitsKey t1 +join encryptedWith128BitsKeyDB.encryptedTableIn128BitsKey t2 where t1.id = t2.id +PREHOOK: type: QUERY +PREHOOK: Input: encryptedwith128bitskeydb@encryptedtablein128bitskey +PREHOOK: Input: encryptedwith256bitskeydb@encryptedtablein256bitskey +#### A masked pattern was here #### +POSTHOOK: query: select * from encryptedWith256BitsKeyDB.encryptedTableIn256BitsKey t1 +join encryptedWith128BitsKeyDB.encryptedTableIn128BitsKey t2 where t1.id = t2.id +POSTHOOK: type: QUERY +POSTHOOK: Input: encryptedwith128bitskeydb@encryptedtablein128bitskey +POSTHOOK: Input: encryptedwith256bitskeydb@encryptedtablein256bitskey +#### A masked pattern was here #### +1 a 1 a +2 b 2 b +3 c 3 c +4 d 4 d