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

    https://github.com/apache/spark/pull/22192#discussion_r218861435
  
    --- Diff: core/src/main/scala/org/apache/spark/executor/Executor.scala ---
    @@ -136,6 +136,26 @@ private[spark] class Executor(
       // for fetching remote cached RDD blocks, so need to make sure it uses 
the right classloader too.
       env.serializerManager.setDefaultClassLoader(replClassLoader)
     
    +  private val executorPlugins: Seq[ExecutorPlugin] = {
    +    val pluginNames = conf.get(EXECUTOR_PLUGINS)
    +    if (pluginNames.nonEmpty) {
    +      logDebug(s"Initializing the following plugins: 
${pluginNames.mkString(", ")}")
    +
    +      // Plugins need to load using a class loader that includes the 
executor's user classpath
    +      val pluginList: Seq[ExecutorPlugin] =
    +        Utils.withContextClassLoader(replClassLoader) {
    +          val plugins = Utils.loadExtensions(classOf[ExecutorPlugin], 
pluginNames, conf)
    +          plugins.foreach(_.init())
    --- End diff --
    
    nit: Might be good to log whether each `plugin.init()` succeeded.


---

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

Reply via email to