Github user steveloughran commented on a diff in the pull request:

    https://github.com/apache/spark/pull/9232#discussion_r42944993
  
    --- Diff: 
yarn/src/main/scala/org/apache/spark/deploy/yarn/YarnSparkHadoopUtil.scala ---
    @@ -142,6 +145,104 @@ class YarnSparkHadoopUtil extends SparkHadoopUtil {
         val containerIdString = 
System.getenv(ApplicationConstants.Environment.CONTAINER_ID.name())
         ConverterUtils.toContainerId(containerIdString)
       }
    +
    +  /**
    +   * Obtains token for the Hive metastore, using the current user as the 
principal.
    +   * Some exceptions are caught and downgraded to a log message.
    +   * @param conf hadoop configuration; the Hive configuration will be 
based on this
    +   * @return a token, or `None` if there's no need for a token (no 
metastore URI or principal
    +   *         in the config), or if a binding exception was caught and 
downgraded.
    +   */
    +  def obtainTokenForHiveMetastore(conf: Configuration): 
Option[Token[DelegationTokenIdentifier]] = {
    +    try {
    +      obtainTokenForHiveMetastoreInner(conf, 
UserGroupInformation.getCurrentUser().getUserName)
    +    } catch {
    +      case e: NoSuchMethodException =>
    +        logInfo("Hive Method not found", e)
    +        None
    +      case e: ClassNotFoundException =>
    --- End diff --
    
    +1. I'd left it in there as it may have had a valid reason for being there, 
but i do things it's correct. Detecting config problems, that is something to 
throw up.
    
    Note that `Client.obtainTokenForHBase()` has similar behaviour; this patch 
doesn't address it. When someone sits down to do it, the policy about how to 
react to failures could be converted into a wrapper around a closure which 
executes the token retrieval (here `obtainTokenForHiveMetastoreInner`), so 
there'd be no divergence.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to