You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@spark.apache.org by vanzin <gi...@git.apache.org> on 2017/11/01 18:21:15 UTC

[GitHub] spark pull request #19272: [Spark-21842][Mesos] Support Kerberos ticket rene...

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

    https://github.com/apache/spark/pull/19272#discussion_r148342319
  
    --- Diff: core/src/main/scala/org/apache/spark/scheduler/cluster/CoarseGrainedSchedulerBackend.scala ---
    @@ -102,8 +99,15 @@ class CoarseGrainedSchedulerBackend(scheduler: TaskSchedulerImpl, val rpcEnv: Rp
       // hadoop token manager used by some sub-classes (e.g. Mesos)
       def hadoopDelegationTokenManager: Option[HadoopDelegationTokenManager] = None
     
    -  // Hadoop delegation tokens to be sent to the executors.
    -  val hadoopDelegationCreds: Option[Array[Byte]] = getHadoopDelegationCreds()
    +  def hadoopCredentialRenewer: Option[HadoopCredentialRenewer] = None
    +
    +  // Hadoop delegation tokens to be sent to the executors, can be updated as necessary.
    +  var renewableDelegationTokens: Option[RenewableDelegationTokens] =
    --- End diff --
    
    This is another part where the interface is brittle and a bit confusing. This should really be a private field, because there should be a single way for sub-classes to update it (send a `UpdateDelegationTokens` message). But it's not because Mesos needs to poke at it because the rest of the API is all a bit weird.
    
    If instead you follow my original suggestion (have a abstract `initializeDelegationTokens()` method that Mesos overrides), then everything becomes a lot more localized and cleaner.


---

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