Thanks a lot! This seems to be the solution. I misinterpreted the meaning of 
the password tag of the Hive2 action.

 

Jan

 

From: Peter Cseh <[email protected]>
Reply-To: <[email protected]>
Date: Friday, June 3, 2016 at 12:41 PM
To: <[email protected]>
Subject: Re: Passing username and password to Hive2 action

 

Hi,

 

The Hive2 action will use the name of the user who runs the workflow.

The password can be defined using the <password> tag.

 

There is a broader description of this at

https://oozie.apache.org/docs/4.2.0/DG_Hive2ActionExtension.html

 

BRs

gp

 

On Thu, Jun 2, 2016 at 11:49 PM, Jan Hentschel <

[email protected]> wrote:

 

Hi,

 

 

 

I have a cluster running HDP 2.3.4 with Oozie 4.2.0 installed on it. The

cluster doesn’t use Kerberos. I’m trying to run a Hive2 action similar to

the following

 

 

 

<workflow-app xmlns="uri:oozie:workflow:0.4" name="hive-wf">

 

     <parameters>...</parameters>

 

 

 

     <start to="hive-load"/>

 

 

 

     <action name="hive-load">

 

         <hive2 xmlns="uri:oozie:hive2-action:0.1">

 

             <job-tracker>${jobTracker}</job-tracker>

 

             <name-node>${nameNode}</name-node>

 

             <job-xml>${nameNode}/oozie/hive-site.xml</job-xml>

 

             <jdbc-url>${hiveServer}</jdbc-url>

 

             <script>${nameNode}/oozie /load-script.hql</script>

 

             <param>...</param>

 

         </hive2>

 

 

 

         <ok to="end"/>

 

         <error to="fail"/>

 

     </action>

 

 

 

     ...

 

 

 

         <ok to="end"/>

 

         <error to="fail"/>

 

     </action>

 

 

 

     <kill name="fail">

 

         <message>Hive failed, error

message[${wf:errorMessage(wf:lastErrorNode())}]</message>

 

     </kill>

 

     <end name="end"/>

 

</workflow-app>

 

 

 

As far as I know the Hive2Main class is connecting to Beeline to run the

Hive script. When connecting to Beeline via the command line I either pass

the –n <username> argument to it (which isn’t possible in the Hive2 action

because of the filtering of this argument) or I get prompted for my

username and password when running !connect <jdbc-url> inside beeline. When

using the anonymous user I don’t have the permissions to access the tables.

 

 

 

How can I pass the username and password to the Hive2 action to Beeline in

the workflow required for connecting to the tables? Thanks for your help!

 

 

 

Jan

 

 

 

 

-- 

Peter Cseh

Software Engineer

<http://www.cloudera.com>

 

Reply via email to