Support Questions
Find answers, ask questions, and share your expertise

Oozie Hive Action Permission Denied after Upgrade

Contributor

We have an Oozie workflow with a Hive action. It looks like this:

<action name="prep-hive-action">
   <hive xmlns="uri:oozie:hive-action:0.2">
      <job-tracker>somecluster002.company.com:8050</job-tracker>
      <name-node>hdfs://HDPDEVHA:8020</name-node>
      <script>/apps/apps-discovery/cr/feed/data_quality/scripts/prep_hdp_i1978_for_dq.hql</script>
      <param>hiveEngine=${hiveEngine}</param>
      <param>hiveBaseTable=${hiveBaseTable}</param>
      <param>hiveLookupTable=${hiveLookupTable}</param>
      <param>hiveStageOneTable=${hiveStageOneTable}</param>
      <param>dayOne=${dayOne}</param>
      <param>dayTwo=${dayTwo}</param>
           <param>queueName=${queueName}</param>
   </hive>
   <ok to="hive-action-generate-daily-close-rates"/>
   <error to="kill"/>
</action>

Our dev cluster was previously on HDP 2.1.1 and it worked fine several times. It runs as a batch user ID.

We upgraded to 2.3 and it's throwing the following error when that Hive action starts:

Failing Oozie Launcher, Main class [org.apache.oozie.action.hadoop.HiveMain], main() threw exception, org.apache.hadoop.security.AccessControlException: Permission denied: user=hdpbatch, access=EXECUTE, inode="/user/yarn/.hiveJars":yarn:hdfs:drwx------

Could use some advice/guidance on how to tackle this issue. I don't see that the /user/yarn/.hiveJars path even exists on HDFS. Maybe it exists on the master node or some other node. Either way, it's saying my user doesn't have execute permissions. Is this a simple toggle in Ranger or a configuration issue?

4 REPLIES 4

Contributor

Additional details:

2351-screen-shot-2016-02-23-at-102222-am.png

@Landon Robinson

This will work if you run it as yarn user.

Contributor

Well, yes, because it's the Yarn user's directory. that's sensible.

However, that's not what we want to do -- we use a batch ID across oour environments, and don't want to use Yarn user.