From 2074e81331a48e24cc5d415badd479ad2a667fa0 Mon Sep 17 00:00:00 2001 From: Olaf Flebbe Date: Thu, 2 Jul 2015 23:09:06 +0200 Subject: [PATCH] HIVE-11175 - create function using jar does not work with sql std authorization --- .../hive/ql/parse/FunctionSemanticAnalyzer.java | 2 +- .../clientpositive/authorization_create_func1.q | 5 +++++ .../clientpositive/authorization_create_func1.q.out | 20 ++++++++++++++++++++ 3 files changed, 26 insertions(+), 1 deletion(-) diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/FunctionSemanticAnalyzer.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/FunctionSemanticAnalyzer.java index 418b4ad..2e093af 100644 --- a/ql/src/java/org/apache/hadoop/hive/ql/parse/FunctionSemanticAnalyzer.java +++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/FunctionSemanticAnalyzer.java @@ -193,7 +193,7 @@ private void addEntities(String functionName, boolean isTemporaryFunction, if (resources != null) { for (ResourceUri resource : resources) { String uriPath = resource.getUri(); - outputs.add(toWriteEntity(uriPath)); + inputs.add(toReadEntity(uriPath)); } } } diff --git a/ql/src/test/queries/clientpositive/authorization_create_func1.q b/ql/src/test/queries/clientpositive/authorization_create_func1.q index 6c7ebc7..9c7b9ab 100644 --- a/ql/src/test/queries/clientpositive/authorization_create_func1.q +++ b/ql/src/test/queries/clientpositive/authorization_create_func1.q @@ -10,5 +10,10 @@ set role ADMIN; create temporary function temp_fn as 'org.apache.hadoop.hive.ql.udf.UDFAscii'; create function perm_fn as 'org.apache.hadoop.hive.ql.udf.UDFAscii'; +create function demo_fn as +'org.apache.hadoop.hive.contrib.udf.UDFRowSequence' using jar "${system:maven.local.repository}/org/apache/hive/hive-contrib/${system:hive.version}/hive-contrib-${system:hive.version}.jar"; + drop temporary function temp_fn; + drop function perm_fn; +drop function demo_fn; diff --git a/ql/src/test/results/clientpositive/authorization_create_func1.q.out b/ql/src/test/results/clientpositive/authorization_create_func1.q.out index 120dacc..4bf9f12 100644 --- a/ql/src/test/results/clientpositive/authorization_create_func1.q.out +++ b/ql/src/test/results/clientpositive/authorization_create_func1.q.out @@ -18,6 +18,18 @@ POSTHOOK: query: create function perm_fn as 'org.apache.hadoop.hive.ql.udf.UDFAs POSTHOOK: type: CREATEFUNCTION POSTHOOK: Output: database:default POSTHOOK: Output: default.perm_fn +PREHOOK: query: create function demo_fn as +'org.apache.hadoop.hive.contrib.udf.UDFRowSequence' using jar "/home/olaf/.m2/repository/org/apache/hive/hive-contrib/2.0.0-SNAPSHOT/hive-contrib-2.0.0-SNAPSHOT.jar" +PREHOOK: type: CREATEFUNCTION +#### A masked pattern was here #### +PREHOOK: Output: database:default +PREHOOK: Output: default.demo_fn +POSTHOOK: query: create function demo_fn as +'org.apache.hadoop.hive.contrib.udf.UDFRowSequence' using jar "/home/olaf/.m2/repository/org/apache/hive/hive-contrib/2.0.0-SNAPSHOT/hive-contrib-2.0.0-SNAPSHOT.jar" +POSTHOOK: type: CREATEFUNCTION +#### A masked pattern was here #### +POSTHOOK: Output: database:default +POSTHOOK: Output: default.demo_fn PREHOOK: query: drop temporary function temp_fn PREHOOK: type: DROPFUNCTION PREHOOK: Output: temp_fn @@ -32,3 +44,11 @@ POSTHOOK: query: drop function perm_fn POSTHOOK: type: DROPFUNCTION POSTHOOK: Output: database:default POSTHOOK: Output: default.perm_fn +PREHOOK: query: drop function demo_fn +PREHOOK: type: DROPFUNCTION +PREHOOK: Output: database:default +PREHOOK: Output: default.demo_fn +POSTHOOK: query: drop function demo_fn +POSTHOOK: type: DROPFUNCTION +POSTHOOK: Output: database:default +POSTHOOK: Output: default.demo_fn -- 2.1.4