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

    https://github.com/apache/spark/pull/16774#discussion_r110979877
  
    --- Diff: 
mllib/src/main/scala/org/apache/spark/ml/tuning/ValidatorParams.scala ---
    @@ -67,6 +71,39 @@ private[ml] trait ValidatorParams extends HasSeed with 
Params {
       /** @group getParam */
       def getEvaluator: Evaluator = $(evaluator)
     
    +  /**
    +   * param to control the number of models evaluated in parallel
    +   * Default: 1
    +   *
    +   * @group param
    +   */
    +  val numParallelEval: IntParam = new IntParam(this, "numParallelEval",
    +    "max number of models to evaluate in parallel, 1 for serial 
evaluation",
    +    ParamValidators.gtEq(1))
    +
    +  /** @group getParam */
    +  def getNumParallelEval: Int = $(numParallelEval)
    +
    +  /**
    +   * Creates a execution service to be used for validation, defaults to a 
thread-pool with
    +   * size of `numParallelEval`
    +   */
    +  protected var executorServiceFactory: (Int) => ExecutorService = {
    +    (requestedMaxThreads: Int) => ThreadUtils.newDaemonCachedThreadPool(
    --- End diff --
    
    So my thinking was that if the thread calling fit is terminated, it would 
have to be the JVM shutting down which would exit without waiting for these 
daemon threads.  We don't really at what point the daemon threads stop or if 
they stop abruptly since any unfinished work is useless.  So I'm not sure if 
adding a shutdownHook would do anything different?
    
    On the other hand, if the SparkSession wanted to cancel the running threads 
with the JVM still running, I think it could do that if it provided it's own 
ExecutorService.


---
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 [email protected] or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to