-
Notifications
You must be signed in to change notification settings - Fork 29k
[SPARK-21411][YARN] Lazily create FS within kerberized UGI to avoid token acquiring failure #18633
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Test build #79601 has finished for PR 18633 at commit
|
|
Jenkins, retest this please. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cache the result of this call since it might be used again below?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this closure needs to take a Configuration as paramater.
If you look at the old code, when renewing tokens, the file system list uses AMCredentialRenewer.freshHadoopConf as the configuration, not the ApplicationMaster configuration as your code is doing. That sounds more correct.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ohh, I see, that looks like another issue, let me change the code.
|
Test build #79626 has finished for PR 18633 at commit
|
Change-Id: I8b35ac9c946ae4396aa26ca4ba3107f4b37ac3d6
Change-Id: I256f2fd9fe666fe66606d5c2fa7dd8cf36346d7b
|
Test build #79684 has finished for PR 18633 at commit
|
|
LGTM |
|
Merging to master. |
What changes were proposed in this pull request?
In the current
YARNHadoopDelegationTokenManager,FileSystemto which to get tokens are created out of KDC logged UGI, using theseFileSystemto get new tokens will lead to exception. The main thing is that Spark code trying to get new tokens from the FS created with token auth-ed UGI, but Hadoop can only grant new tokens in kerberized UGI. To fix this issue, we should lazily create these FileSystem within KDC logged UGI.How was this patch tested?
Manual verification in secure cluster.
CC @vanzin @mgummelt please help to review, thanks!