[ 
https://issues.apache.org/jira/browse/MAPREDUCE-3443?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13159907#comment-13159907
 ] 

Siddharth Seth commented on MAPREDUCE-3443:
-------------------------------------------

Spent some time understanding what the issue was. The patch in it's current 
state looks good mostly. Couple of possible changes
- job = clientUgi.doAs() is repeated all over JobClient. That could move into a 
separate function.
- JobClient.jobsToComplete / getAllJobs - needs to be wrapped in a ugi.doAs

In 0.20, things were a little simpler - since the connection to the JobTracker 
was being established by the JobClient itself - using the ugi at JobClient 
creation time.
That may be an alternate for Yarn as well - YARNRunner, ClientServiceDelegate 
and ResourceManagerDelegate would need to keep an instance of the ugi they are 
created with - and use this for each RPC proxy creation.
                
> Oozie jobs are running as oozie user even though they create the jobclient as 
> doAs.
> -----------------------------------------------------------------------------------
>
>                 Key: MAPREDUCE-3443
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-3443
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>          Components: mrv2
>    Affects Versions: 0.23.0
>            Reporter: Mahadev konar
>            Assignee: Mahadev konar
>            Priority: Blocker
>             Fix For: 0.23.1
>
>         Attachments: MAPREDUCE-3443.patch, MAPREDUCE-3443.patch, 
> MAPREDUCE-3443.patch, MAPREDUCE-3443.patch
>
>
> Oozie is having issues with job submission, since it does the following:
> {code}
> doAs(userwhosubmittedjob) {
>  jobclient = new JobClient(jobconf);
> }
> jobclient.submitjob()
> {code}
> In 0.20.2** this works because the JT proxy is created as soon as we call new 
> JobClient(). But in 0.23 this is no longer true since the client has to talk 
> to multiple servers (AM/RM/JHS). To keep this behavior we will have to store 
> the ugi in new JobClient() and make sure all the calls are run with a doAs() 
> inside the jobclient.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to