John Sherman created HIVE-23355:
-----------------------------------
Summary: Handle STORED AS quoting behavior properly when masking
is enabled
Key: HIVE-23355
URL: https://issues.apache.org/jira/browse/HIVE-23355
Project: Hive
Issue Type: Bug
Components: HiveServer2
Reporter: John Sherman
Assignee: John Sherman
Fix For: 4.0.0
Test framework repro:
{code:java}
--- a/ql/src/test/queries/clientpositive/masking_reserved.q
+++ b/ql/src/test/queries/clientpositive/masking_reserved.q
@@ -5,6 +5,7 @@ set
hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.autho
create table keyword_test_off (id int, `etad` string, key int);
create table keyword_test_on (id int, `date` string, key int);
create table masking_test_n_masking_reserved (id int, value string, key int);
+create temporary table masking_test_n_masking_temp stored as orc as select *
from masking_test_n_masking_reserved; explain select a.`etad`, b.value from
keyword_test_off a join masking_test_n_masking_reserved b on b.id = a.id;
select a.`etad`, b.value from keyword_test_off a join
masking_test_n_masking_reserved b on b.id = a.id; {code}
fails with:
{code:java}
2020-04-30T20:19:06,833 INFO [bba048b2-380a-46e2-b283-52c1090a0d5c main]
parse.CalcitePlanner: Creating table default.masking_test_n_masking_temp
position=23
2020-04-30T20:19:06,851 ERROR [bba048b2-380a-46e2-b283-52c1090a0d5c main]
ql.Driver: FAILED: SemanticException Unrecognized file format in STORED AS
clause: '`ORC`'
org.apache.hadoop.hive.ql.parse.SemanticException: Unrecognized file format in
STORED AS clause: '`ORC`'
at
org.apache.hadoop.hive.ql.parse.StorageFormat.processStorageFormat(StorageFormat.java:89)
at
org.apache.hadoop.hive.ql.parse.StorageFormat.fillStorageFormat(StorageFormat.java:74)
at
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeCreateTable(SemanticAnalyzer.java:13351)
at
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.genResolvedParseTree(SemanticAnalyzer.java:12256)
at
org.apache.hadoop.hive.ql.parse.SemanticAnalyzer.analyzeInternal(SemanticAnalyzer.java:12471)
at
org.apache.hadoop.hive.ql.parse.CalcitePlanner.analyzeInternal(CalcitePlanner.java:432)
at
org.apache.hadoop.hive.ql.parse.BaseSemanticAnalyzer.analyze(BaseSemanticAnalyzer.java:289)
at org.apache.hadoop.hive.ql.Compiler.analyze(Compiler.java:220)
at org.apache.hadoop.hive.ql.Compiler.compile(Compiler.java:104)
at org.apache.hadoop.hive.ql.Driver.compile(Driver.java:184) {code}
We should either not quote the STORED BY argument in this path OR strip quotes
in processStorageFormat.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)