aboutsummaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorYe Xianjin <advancedxy@gmail.com>2014-04-16 14:56:22 -0700
committerPatrick Wendell <pwendell@gmail.com>2014-04-16 14:56:22 -0700
commit10b1c59dcc9ca2c1dafa02cb3ea298f3b33fc914 (patch)
tree2e60e0b608d5bc6d70534f47a2f16546146a8df0 /core
parent725925cf2120e998651f7d1406fdb34fc2405b9f (diff)
downloadspark-10b1c59dcc9ca2c1dafa02cb3ea298f3b33fc914.tar.gz
spark-10b1c59dcc9ca2c1dafa02cb3ea298f3b33fc914.tar.bz2
spark-10b1c59dcc9ca2c1dafa02cb3ea298f3b33fc914.zip
[SPARK-1511] use Files.move instead of renameTo in TestUtils.scala
JIRA issue:[SPARK-1511](https://issues.apache.org/jira/browse/SPARK-1511) TestUtils.createCompiledClass method use renameTo() to move files which fails when the src and dest files are in different disks or partitions. This pr uses Files.move() instead. The move method will try to use renameTo() and then fall back to copy() and delete(). I think this should handle this issue. I didn't found a test suite for this file, so I add file existence detection after file moving. Author: Ye Xianjin <advancedxy@gmail.com> Closes #427 from advancedxy/SPARK-1511 and squashes the following commits: a2b97c7 [Ye Xianjin] Based on @srowen's comment, assert file existence. 6f95550 [Ye Xianjin] use Files.move instead of renameTo to handle the src and dest files are in different disks or partitions.
Diffstat (limited to 'core')
-rw-r--r--core/src/main/scala/org/apache/spark/TestUtils.scala9
1 files changed, 7 insertions, 2 deletions
diff --git a/core/src/main/scala/org/apache/spark/TestUtils.scala b/core/src/main/scala/org/apache/spark/TestUtils.scala
index f3f59e47c3..8ae0215482 100644
--- a/core/src/main/scala/org/apache/spark/TestUtils.scala
+++ b/core/src/main/scala/org/apache/spark/TestUtils.scala
@@ -100,9 +100,14 @@ private[spark] object TestUtils {
val fileName = className + ".class"
val result = new File(fileName)
- if (!result.exists()) throw new Exception("Compiled file not found: " + fileName)
+ assert(result.exists(), "Compiled file not found: " + result.getAbsolutePath())
val out = new File(destDir, fileName)
- result.renameTo(out)
+
+ // renameTo cannot handle in and out files in different filesystems
+ // use google's Files.move instead
+ Files.move(result, out)
+
+ assert(out.exists(), "Destination file not moved: " + out.getAbsolutePath())
out
}
}