Github user squito commented on the issue:

    https://github.com/apache/spark/pull/21356
  
    the problem was not actually an interrupted exception from the listener, it 
was that the Thread's state was getting set to interrupted, and then there 
would be a failure later in `queue.take()`:
    
    ```
    18/05/16 17:46:36 INFO scheduler.AsyncEventQueue: Stopping listener queue 
eventLog.
    java.lang.InterruptedException
            at 
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireInterruptibly(AbstractQueuedSynchronizer.java:1220)
            at 
java.util.concurrent.locks.ReentrantLock.lockInterruptibly(ReentrantLock.java:335)
            at 
java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:439)
            at 
org.apache.spark.scheduler.AsyncEventQueue$$anonfun$org$apache$spark$scheduler$AsyncEventQueue$$dispatch$1.apply(AsyncEventQueue.scala:94)
    ...
    ```
    
    so really the question is what to do if a listener sets the interrupt state 
*or* throws an InterruptedException.  But from all the discussion its not that 
clear to me what we should (other than of course preventing the queue from 
hanging and the applciation from stopping).


---

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

Reply via email to