[ https://issues.apache.org/jira/browse/SPARK-22319?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Saisai Shao reassigned SPARK-22319:
-----------------------------------
Assignee: Steven Rand
> SparkSubmit calls getFileStatus before calling loginUserFromKeytab
> ------------------------------------------------------------------
>
> Key: SPARK-22319
> URL: https://issues.apache.org/jira/browse/SPARK-22319
> Project: Spark
> Issue Type: Bug
> Components: Deploy, Spark Core
> Affects Versions: 2.2.0, 2.3.0
> Reporter: Steven Rand
> Assignee: Steven Rand
> Fix For: 2.3.0
>
>
> In the SparkSubmit code, we call {{resolveGlobPaths}}, which eventually calls {{getFileStatus}},
which for HDFS is an RPC call to the NameNode: https://github.com/apache/spark/blob/master/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala#L346.
> We do this before we call {{loginUserFromKeytab}}, which is further down in the same
method: https://github.com/apache/spark/blob/master/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala#L655.
> The result is that the call to {{resolveGlobPaths}} fails in secure clusters with:
> {code}
> javax.security.sasl.SaslException: GSS initiate failed [Caused by GSSException: No valid
credentials provided (Mechanism level: Failed to find any Kerberos tgt)]
> {code}
> A workaround is to {{kinit}} on the host before using spark-submit. However, it's better
if this workaround isn't necessary. A simple fix is to call loginUserFromKeytab before attempting
to interact with HDFS.
> At least for cluster mode, this would appear to be a regression caused by SPARK-21012.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org
|