aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatei Zaharia <matei.zaharia@gmail.com>2013-09-02 11:20:39 -0700
committerMatei Zaharia <matei.zaharia@gmail.com>2013-09-02 11:20:39 -0700
commit636fc0c89e837f1dec72bdacc749423b08e06126 (patch)
treee05ba450c54acfc9e322a58cb2f5691d4755b260
parentd9a53b94f81f6d706bece56c15a2f9e05143a350 (diff)
parent246bf67f58fab00df736abc20a0f3740920e0083 (diff)
downloadspark-636fc0c89e837f1dec72bdacc749423b08e06126.tar.gz
spark-636fc0c89e837f1dec72bdacc749423b08e06126.tar.bz2
spark-636fc0c89e837f1dec72bdacc749423b08e06126.zip
Merge pull request #886 from mateiz/codec
Fix spark.io.compression.codec and change default codec to LZF
-rw-r--r--core/src/main/scala/org/apache/spark/io/CompressionCodec.scala12
-rw-r--r--core/src/test/scala/org/apache/spark/io/CompressionCodecSuite.scala2
-rw-r--r--docs/configuration.md2
3 files changed, 6 insertions, 10 deletions
diff --git a/core/src/main/scala/org/apache/spark/io/CompressionCodec.scala b/core/src/main/scala/org/apache/spark/io/CompressionCodec.scala
index 90a0420caf..570a979b56 100644
--- a/core/src/main/scala/org/apache/spark/io/CompressionCodec.scala
+++ b/core/src/main/scala/org/apache/spark/io/CompressionCodec.scala
@@ -39,17 +39,13 @@ trait CompressionCodec {
private[spark] object CompressionCodec {
def createCodec(): CompressionCodec = {
- // Set the default codec to Snappy since the LZF implementation initializes a pretty large
- // buffer for every stream, which results in a lot of memory overhead when the number of
- // shuffle reduce buckets are large.
- createCodec(classOf[SnappyCompressionCodec].getName)
+ createCodec(System.getProperty(
+ "spark.io.compression.codec", classOf[LZFCompressionCodec].getName))
}
def createCodec(codecName: String): CompressionCodec = {
- Class.forName(
- System.getProperty("spark.io.compression.codec", codecName),
- true,
- Thread.currentThread.getContextClassLoader).newInstance().asInstanceOf[CompressionCodec]
+ Class.forName(codecName, true, Thread.currentThread.getContextClassLoader)
+ .newInstance().asInstanceOf[CompressionCodec]
}
}
diff --git a/core/src/test/scala/org/apache/spark/io/CompressionCodecSuite.scala b/core/src/test/scala/org/apache/spark/io/CompressionCodecSuite.scala
index fd6f69041a..ab81bfbe55 100644
--- a/core/src/test/scala/org/apache/spark/io/CompressionCodecSuite.scala
+++ b/core/src/test/scala/org/apache/spark/io/CompressionCodecSuite.scala
@@ -44,7 +44,7 @@ class CompressionCodecSuite extends FunSuite {
test("default compression codec") {
val codec = CompressionCodec.createCodec()
- assert(codec.getClass === classOf[SnappyCompressionCodec])
+ assert(codec.getClass === classOf[LZFCompressionCodec])
testCodec(codec)
}
diff --git a/docs/configuration.md b/docs/configuration.md
index aaf85ed4f4..310e78a9eb 100644
--- a/docs/configuration.md
+++ b/docs/configuration.md
@@ -147,7 +147,7 @@ Apart from these, the following properties are also available, and may be useful
</tr>
<tr>
<td>spark.io.compression.codec</td>
- <td>org.apache.spark.io.<br />SnappyCompressionCodec</td>
+ <td>org.apache.spark.io.<br />LZFCompressionCodec</td>
<td>
The compression codec class to use for various compressions. By default, Spark provides two
codecs: <code>org.apache.spark.io.LZFCompressionCodec</code> and <code>org.apache.spark.io.SnappyCompressionCodec</code>.