Spark错误:“ERROR Utils:删除Spark temp目录时出现异常:”

时间:2015-07-07 16:19:49

标签: scala apache-spark ioexception

修改:按要求添加详细信息

在运行一个用Scala编写的简单Spark代码时,在管理员模式的Windows 7 64位本地运行,执行总是以错误结束,如下所述。在抛出错误之前,代码会按预期(saveAsTextFile)编写输出。

(根据谷歌搜索,其他人有同样的问题,但在代码末尾添加sc.stop(),如另一个主板上的建议没有帮助。)

代码:

import org.apache.spark.SparkContext
import org.apache.spark.SparkConf

object Test {
    def main(args: Array[String]) { 
        System.setProperty("hadoop.home.dir", "C:/prog/winutil/")   
        val inputFile1 = "./textinput.txt" 

        val conf = new SparkConf().setAppName("Testing")
        val sc = new SparkContext(conf)

        val data = sc.textFile(inputFile1)      

        val outputFile = "./output"
        data.saveAsTextFile(outputFile)

        sc.stop()       
    }
}

错误信息:

ERROR Utils: Exception while deleting Spark temp dir: [userpath]\AppData\Local\Temp\spark-a790ba3f-af1e-4d2b-80e8-4085caaad04b\userFiles
-904e004e-4ca2-43a8-8689-684cc401b827
java.io.IOException: Failed to delete: [userpath]\AppData\Local\Temp\spark
-a790ba3f-af1e-4d2b-80e8-4085caaad04b\userFiles-904e004e-4ca2-43a8-8689-684cc401
b827
        at org.apache.spark.util.Utils$.deleteRecursively(Utils.scala:933)
        at org.apache.spark.util.Utils$$anon$4$$anonfun$run$1$$anonfun$apply$mcV
$sp$2.apply(Utils.scala:181)
        at org.apache.spark.util.Utils$$anon$4$$anonfun$run$1$$anonfun$apply$mcV
$sp$2.apply(Utils.scala:179)
        at scala.collection.mutable.HashSet.foreach(HashSet.scala:79)
        at org.apache.spark.util.Utils$$anon$4$$anonfun$run$1.apply$mcV$sp(Utils
.scala:179)
        at org.apache.spark.util.Utils$$anon$4$$anonfun$run$1.apply(Utils.scala:
177)
        at org.apache.spark.util.Utils$$anon$4$$anonfun$run$1.apply(Utils.scala:
177)
        at org.apache.spark.util.Utils$.logUncaughtExceptions(Utils.scala:1618)
        at org.apache.spark.util.Utils$$anon$4.run(Utils.scala:177)

1 个答案:

答案 0 :(得分:0)

移动count()&在使用saveAsParquetFile保存镶木地板之前,在RDD上使用take()语句。所以在调用saveAsParquetFile之前尝试移动任何rdd.take()。