[
https://issues.apache.org/jira/browse/SPARK-18928?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Herman van Hovell resolved SPARK-18928.
---------------------------------------
Resolution: Fixed
Fix Version/s: 2.1.1
> FileScanRDD, JDBCRDD, and UnsafeSorter should support task cancellation
> -----------------------------------------------------------------------
>
> Key: SPARK-18928
> URL: https://issues.apache.org/jira/browse/SPARK-18928
> Project: Spark
> Issue Type: Bug
> Components: Spark Core, SQL
> Reporter: Josh Rosen
> Assignee: Josh Rosen
> Fix For: 2.1.1
>
>
> Spark tasks respond to cancellation by checking
> {{TaskContext.isInterrupted()}}, but this check is missing on a few critical
> paths used in Spark SQL, including FileScanRDD, JDBCRDD, and
> UnsafeSorter-based sorts. This can cause interrupted / cancelled tasks to
> continue running and become zombies.
> Here's an example: first, create a giant text file. In my case, I just
> concatenated /usr/share/dict/words a bunch of times to produce a 2.75 gig
> file. Then, run a really slow query over that file and try to cancel it:
> {code}
> spark.read.text("/tmp/words").selectExpr("value + value + value").collect()
> {code}
> This will sit and churn at 100% CPU for a minute or two because the task
> isn't checking the interrupted flag.
> The solution here is to add InterruptedIterator-style checks to a few
> locations where they're currently missing in Spark SQL.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]