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

Daryn Sharp commented on HADOOP-9409:
-------------------------------------

Oh my, I feel sorry for the contortions oozie has to perform.  You're right on 
the exception, I assumed {{isAllowedDelegationTokenOp}} and its subsequent "you 
need kerberos" exception meant it rejected all non-kerberos.  It does indeed 
always return a token, even though it will never be used...

An aside: It sure would be been nice if there was simply a key named something 
like "mapreduce.job.submit.allowed".  We could use it to trigger both getting a 
RM and HS token, if necessary, with the correct renewer.

Anyway, is the dummy HS token actually required somewhere?  If not, what if the 
{noformat}if (hsProxy != null) { ...get hs token...}{noformat} is changed to: 
{noformat}if (hsProxy != null && Master.getMasterPrincipal(conf) != null) { 
...get hs token...}{noformat}

I think the HS token is invisible to the submitter so it's presence or lack 
thereof shouldn't have a compat issue?
                
> MR Client gets an renewer token exception while Oozie is submitting a job
> -------------------------------------------------------------------------
>
>                 Key: HADOOP-9409
>                 URL: https://issues.apache.org/jira/browse/HADOOP-9409
>             Project: Hadoop Common
>          Issue Type: Bug
>    Affects Versions: 2.0.3-alpha
>            Reporter: Roman Shaposhnik
>            Priority: Blocker
>             Fix For: 2.0.4-alpha
>
>         Attachments: HADOOP-9409.patch
>
>
> After the fix for HADOOP-9299 I'm now getting the following bizzare exception 
> in Oozie while trying to submit a job. This also seems to be KRB related:
> {noformat}
> 2013-03-15 13:34:16,555  WARN ActionStartXCommand:542 - USER[hue] GROUP[-] 
> TOKEN[] APP[MapReduce] JOB[0000001-130315123130987-oozie-oozi-W] 
> ACTION[0000001-130315123130987-oozie-oozi-W@Sleep] Error starting action 
> [Sleep]. ErrorType [ERROR], ErrorCode [UninitializedMessageException], 
> Message [UninitializedMessageException: Message missing required fields: 
> renewer]
> org.apache.oozie.action.ActionExecutorException: 
> UninitializedMessageException: Message missing required fields: renewer
>       at 
> org.apache.oozie.action.ActionExecutor.convertException(ActionExecutor.java:401)
>       at 
> org.apache.oozie.action.hadoop.JavaActionExecutor.submitLauncher(JavaActionExecutor.java:738)
>       at 
> org.apache.oozie.action.hadoop.JavaActionExecutor.start(JavaActionExecutor.java:889)
>       at 
> org.apache.oozie.command.wf.ActionStartXCommand.execute(ActionStartXCommand.java:211)
>       at 
> org.apache.oozie.command.wf.ActionStartXCommand.execute(ActionStartXCommand.java:59)
>       at org.apache.oozie.command.XCommand.call(XCommand.java:277)
>       at 
> org.apache.oozie.service.CallableQueueService$CompositeCallable.call(CallableQueueService.java:326)
>       at 
> org.apache.oozie.service.CallableQueueService$CompositeCallable.call(CallableQueueService.java:255)
>       at 
> org.apache.oozie.service.CallableQueueService$CallableWrapper.run(CallableQueueService.java:175)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>       at java.lang.Thread.run(Thread.java:662)
> Caused by: com.google.protobuf.UninitializedMessageException: Message missing 
> required fields: renewer
>       at 
> com.google.protobuf.AbstractMessage$Builder.newUninitializedMessageException(AbstractMessage.java:605)
>       at 
> org.apache.hadoop.security.proto.SecurityProtos$GetDelegationTokenRequestProto$Builder.build(SecurityProtos.java:973)
>       at 
> org.apache.hadoop.mapreduce.v2.api.protocolrecords.impl.pb.GetDelegationTokenRequestPBImpl.mergeLocalToProto(GetDelegationTokenRequestPBImpl.java:84)
>       at 
> org.apache.hadoop.mapreduce.v2.api.protocolrecords.impl.pb.GetDelegationTokenRequestPBImpl.getProto(GetDelegationTokenRequestPBImpl.java:67)
>       at 
> org.apache.hadoop.mapreduce.v2.api.impl.pb.client.MRClientProtocolPBClientImpl.getDelegationToken(MRClientProtocolPBClientImpl.java:200)
>       at 
> org.apache.hadoop.mapred.YARNRunner.getDelegationTokenFromHS(YARNRunner.java:194)
>       at org.apache.hadoop.mapred.YARNRunner.submitJob(YARNRunner.java:273)
>       at 
> org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:392)
>       at org.apache.hadoop.mapreduce.Job$11.run(Job.java:1218)
>       at org.apache.hadoop.mapreduce.Job$11.run(Job.java:1215)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at javax.security.auth.Subject.doAs(Subject.java:396)
>       at 
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1439)
>       at org.apache.hadoop.mapreduce.Job.submit(Job.java:1215)
>       at org.apache.hadoop.mapred.JobClient$1.run(JobClient.java:581)
>       at org.apache.hadoop.mapred.JobClient$1.run(JobClient.java:576)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at javax.security.auth.Subject.doAs(Subject.java:396)
>       at 
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1439)
>       at org.apache.hadoop.mapred.JobClient.submitJob(JobClient.java:576)
>       at 
> org.apache.oozie.action.hadoop.JavaActionExecutor.submitLauncher(JavaActionExecutor.java:723)
>       ... 10 more
> 2013-03-15 13:34:16,555  WARN ActionStartXCommand:542 - USER[hue] GROUP[-] 
> TOKEN[] APP[MapReduce] JOB[0000001-13031512313
> {noformat}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to