Max  Xie created HIVE-25401:
-------------------------------

             Summary: Insert overwrite  a table which location is on other 
cluster fail  in kerberos cluster
                 Key: HIVE-25401
                 URL: https://issues.apache.org/jira/browse/HIVE-25401
             Project: Hive
          Issue Type: Bug
          Components: Hive
    Affects Versions: 3.1.2, 2.3.0
         Environment: hive 2.3 

hadoop3 cluster with kerberos 
            Reporter: Max  Xie
         Attachments: image-2021-07-29-14-25-23-418.png

we have tow hdfs clusters with kerberos security,  it means that mapreduce task 
need delegation tokens to authenticate namenode when hive on mapreduce run.

Insert overwrite a table which location is on other cluster fail in kerberos 
cluster. For example, 
 # yarn cluster's default fs is hdfs://cluster1
 # tb1's location is hdfs://cluster1/tb1
 # tb2's location is hdfs://cluster2/tb2 
 #  sql `INSERT OVERWRITE TABLE  tb2 SELECT * from tb1` run on yarn cluster 
will fail

 

reduce task error log:

!image-2021-07-29-14-25-23-418.png!

How to fix:

After dig it, web found mapreduce job just obtain delegation tokens for input 
files in FileInputFormat. But Hive context get extendal scratchDir base on 
table's location, If the table 's location is on other cluster, the delegation 
token will not be obtained. 

So we need to obtainer delegation tokens for hive scratchDirs before hive 
submit mapreduce job.

 

How to test:

no test

 

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to